{"_id":"@bentoproject/date-display","_rev":"244-710bd188cc052b1ab2e723e8f97fac48","name":"@bentoproject/date-display","dist-tags":{"nightly":"1.2305241828.0","latest":"1.2305051745.1"},"versions":{"1.2110261518.0":{"name":"@bentoproject/date-display","version":"1.2110261518.0","description":"AMP HTML amp-date-display Component","author":{"name":"The AMP HTML Authors"},"license":"Apache-2.0","main":"./dist/web-component.js","module":"./dist/web-component.module.js","exports":{".":"./web-component","./web-component":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./preact":{"import":"./dist/component-preact.module.js","require":"./dist/component-preact.js"},"./react":{"import":"./dist/component-react.module.js","require":"./dist/component-react.js"}},"repository":{"type":"git","url":"git+https://github.com/ampproject/amphtml.git","directory":"extensions/amp-date-display/1.0"},"homepage":"https://github.com/ampproject/amphtml/tree/main/extensions/amp-date-display/1.0","peerDependencies":{"preact":"^10.2.1","react":"^17.0.0"},"gitHead":"e4bbe5c706c18a2c817265b40388ca4d4771613a","bugs":{"url":"https://github.com/ampproject/amphtml/issues"},"_id":"@bentoproject/date-display@1.2110261518.0","_nodeVersion":"16.13.0","_npmVersion":"8.1.0","dist":{"integrity":"sha512-TTl9GYCsCW7o2WUwPv0LcqmGXf8Mqxq3MxVGg/1U1cGscI+qcEXyvy7XTgKhFgyozsCe2S17Mkr1Zyg/n+JBvA==","shasum":"232effe59ee496a04a58e43242496064927b435e","tarball":"https://registry.npmjs.org/@bentoproject/date-display/-/date-display-1.2110261518.0.tgz","fileCount":27,"unpackedSize":2000086,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIEZA5qejWFo8ScIumAjPwCVrrZx2WhetYK2HL+EmUmbnAiEA5odDre94DKLiiV3M0VN1d5OMAhDHz3DV8AeZ5i5FIjQ="}]},"_npmUser":{"name":"ampprojectbot","email":"bot@amp.dev"},"directories":{},"maintainers":[{"name":"ampprojectbot","email":"bot@amp.dev"},{"name":"kristoferbaxter","email":"kbax@me.com"},{"name":"esth","email":"esther@amp.dev"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/date-display_1.2110261518.0_1635445087081_0.7034523212531816"},"_hasShrinkwrap":false},"1.2110252343.0":{"name":"@bentoproject/date-display","version":"1.2110252343.0","description":"Bento date-display Component","author":{"name":"Bento Authors"},"license":"Apache-2.0","main":"./dist/web-component.js","module":"./dist/web-component.module.js","exports":{".":"./web-component","./web-component":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./preact":{"import":"./dist/component-preact.module.js","require":"./dist/component-preact.js"},"./react":{"import":"./dist/component-react.module.js","require":"./dist/component-react.js"}},"repository":{"type":"git","url":"git+https://github.com/ampproject/amphtml.git","directory":"extensions/amp-date-display/1.0"},"homepage":"https://github.com/ampproject/amphtml/tree/main/extensions/amp-date-display/1.0","peerDependencies":{"preact":"^10.2.1","react":"^17.0.0"},"readme":"# Bento Date Display\n\n## Usage\n\nThe Bento Date Display component displays time data that you can render in your page. By providing specific [attributes](#attributes) in the\nBento Date Display tag, the Bento Date Display extension returns a list of time\nparameters, which you can pass to\n[an amp-mustache template](../../amp-mustache/amp-mustache.md)\nfor rendering. Refer to the\n[list below for each returned time parameter](#returned-time-parameters).\n\n<!--\n### Web Component\n\nTODO(https://go.amp.dev/issue/36619): Restore this section. We don't include it because we don't support <template> in Bento Web Components yet.\n\nAn older version of this file contains the removed section, though it's incorrect:\n\nhttps://github.com/ampproject/amphtml/blob/422d171e87571c4d125a2bf956e78e92444c10e8/extensions/amp-date-display/1.0/README.md\n-->\n\n### Preact/React Component\n\nThe examples below demonstrates use of the `<BentoDateDisplay>` as a functional component usable with the Preact or React libraries.\n\n#### Example: Import via npm\n\nInstall via npm:\n\n```sh\nnpm install @bentoproject/date-display\n```\n\n```javascript\nimport React from 'react';\nimport {BentoDateDisplay} from '@bentoproject/date-display/react';\nimport '@bentoproject/date-display/styles.css';\n\nfunction App() {\n  return (\n    <BentoDateDisplay\n      datetime={dateTime}\n      displayIn={displayIn}\n      locale={locale}\n      render={(date) => (\n        <div>{`ISO: ${date.iso}; locale: ${date.localeString}`}</div>\n      )}\n    />\n  );\n}\n```\n\n#### Interactivity and API usage\n\nThe Bento Date Display component does not have an imperative API. However, the Bento Date Display Preact/React component does accept a `render` prop that renders the consumer's template. This `render` prop should be a function which the Bento Date Display Preact/React component can use to render its template. The `render` callback will be provided a variety of date-related parameters for consumers to interpolate in the rendered template. See the [`render` prop section](#render) for more information.\n\n#### Layout and style\n\nThe Bento Date Display Preact/React component allows consumers to render their own templates. These templates may use inline styles, `<style>` tags, Preact/React components that import their own stylesheets.\n\n#### Props\n\n##### `datetime`\n\nRequired prop. Denotes the date and time as a Date, String, or Nuumber. If String, must be a\nstandard ISO 8601 date string (e.g. 2017-08-02T15:05:05.000Z) or the string `now`. If set to `now`, it will use the time the page loaded to render its template. If Number, must be a POSIX epoch value in milliseconds.\n\n##### `displayIn`\n\nOptional prop that can be either `\"utc\"` or `\"local\"` and defaults to `\"local\"`. This prop indicates what timezone to display the date in. If set to the value `\"utc\"`, the component will convert the given date to UTC.\n\n##### `locale`\n\nAn internationalization language string for each timer unit. The default value is `en` (for English). This prop supports all values that are supported by the user's browser.\n\n##### `localeOptions`\n\nThe `localeOptions` object supports all the options under [Intl.DateTimeFormat.options](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/DateTimeFormat#parameters) parameter that specifies the formatting style to use for `localeString` format.\n\nNote that if the `displayIn` prop is set to `utc`, the value of `localeOptions.timeZone` will automatically be converted to `UTC`.\n\n##### `render`\n\nOptional callback that should render a template. The callback will be provided an object with properties/values related to the date expressed in `datetime`.\nBy default, the Bento Date Display component will display the [`localeString` form of the Date](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/toLocaleString) for the given locale and localeOption.\nSee the [Returned Time Parameters section](#returned-time-parameters) for more details on how each property will be displayed.\n\n```typescript\n(dateParams: DateParams) => JSXInternal.Element\ninterface DateParams {\n  day: number;\n  dayName: string;\n  dayNameShort: string;\n  dayPeriod: string;\n  dayTwoDigit: string;\n  hour: number;\n  hour12: number;\n  hour12TwoDigit: string;\n  hourTwoDigit: string;\n  iso: string;\n  localeString: string;\n  minute: number;\n  minuteTwoDigit: string;\n  month: number;\n  monthName: string;\n  monthNameShort: string;\n  monthTwoDigit: string;\n  second: number;\n  secondTwoDigit: string;\n  timeZoneName: string;\n  timeZoneNameShort: string;\n  year: number;\n  yearTwoDi: string;\n}\n```\n\n### Returned Time Parameters\n\nThis table lists the format you can specify in your Mustache template:\n\n| Format            | Meaning                                                       |\n| ----------------- | ------------------------------------------------------------- |\n| day               | 1, 2, ...12, 13, etc.                                         |\n| dayName           | string,                                                       |\n| dayNameShort      | string,                                                       |\n| dayPeriod         | string,                                                       |\n| dayTwoDigit       | 01, 02, 03, ..., 12, 13, etc.                                 |\n| hour              | 0, 1, 2, 3, ..., 12, 13, ..., 22, 23                          |\n| hour12            | 1, 2, 3, ..., 12, 1, 2, ..., 11, 12                           |\n| hour12TwoDigit    | 01, 02, ..., 12, 01, 02, ..., 11, 12                          |\n| hourTwoDigit      | 00, 01, 02, ..., 12, 13, ..., 22, 23                          |\n| iso               | A standard ISO8601 date string e.g. 2019-01-23T15:31:21.213Z, |\n| localeString      | A string with a language sensitive representation.            |\n| minute            | 0, 1, 2, ..., 58, 59                                          |\n| minuteTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| month             | 1, 2, 3, ..., 12                                              |\n| monthName         | Internationalized month name string.                          |\n| monthNameShort    | Internationalized abbreviated month name string.,             |\n| monthTwoDigit     | 01, 02, ..., 11, 12                                           |\n| second            | 0, 1, 2, ..., 58, 59                                          |\n| secondTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| timeZoneName      | Internationalized timezone, like `Pacific Daylight Time`      |\n| timeZoneNameShort | Internationalized timezone, abbreviated, like `PST`           |\n| year              | 0, 1, 2, ..., 1999, 2000, 2001, etc.                          |\n| yearTwoDigit      | 00, 01, 02, ..., 17, 18, 19, ..., 98, 99                      |\n","readmeFilename":"README.md","gitHead":"57e62ecc0e24bc2cd64467dba9d0f9836eea0182","bugs":{"url":"https://github.com/ampproject/amphtml/issues"},"_id":"@bentoproject/date-display@1.2110252343.0","_nodeVersion":"16.13.0","_npmVersion":"8.1.0","dist":{"integrity":"sha512-bU6807L9Mbv/gq20KlRc0DCZCMB4pIBPz66B5PRMc3iYp0DVzS9wBzDlZcaet2dzBWDUXdXov5S7RdacrGKoHA==","shasum":"6fef81da66a1f48cdff50e41d51019e8236cdf5e","tarball":"https://registry.npmjs.org/@bentoproject/date-display/-/date-display-1.2110252343.0.tgz","fileCount":27,"unpackedSize":2000072,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCICobsYc1yxMdVO2pY/vCXbBGBSj37L9r3RpG8XYLFQ8aAiEAkQHW/8IUvgtzQGAoElB8aEaGq9xG2P9TO7iaFxTUJ00="}]},"_npmUser":{"name":"bentoprojectbot","email":"bentobot@amp.dev"},"directories":{},"maintainers":[{"name":"bentoprojectbot","email":"bentobot@amp.dev"},{"name":"ampprojectbot","email":"bot@amp.dev"},{"name":"kristoferbaxter","email":"kbax@me.com"},{"name":"esth","email":"esther@amp.dev"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/date-display_1.2110252343.0_1635457647503_0.6480279252134247"},"_hasShrinkwrap":false},"1.2110281959.0":{"name":"@bentoproject/date-display","version":"1.2110281959.0","description":"Bento date-display Component","author":{"name":"Bento Authors"},"license":"Apache-2.0","main":"./dist/web-component.js","module":"./dist/web-component.module.js","exports":{".":"./web-component","./web-component":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./preact":{"import":"./dist/component-preact.module.js","require":"./dist/component-preact.js"},"./react":{"import":"./dist/component-react.module.js","require":"./dist/component-react.js"}},"repository":{"type":"git","url":"git+https://github.com/ampproject/amphtml.git","directory":"extensions/amp-date-display/1.0"},"homepage":"https://github.com/ampproject/amphtml/tree/main/extensions/amp-date-display/1.0","peerDependencies":{"preact":"^10.2.1","react":"^17.0.0"},"readme":"# Bento Date Display\n\n## Usage\n\nThe Bento Date Display component displays time data that you can render in your page. By providing specific [attributes](#attributes) in the\nBento Date Display tag, the Bento Date Display extension returns a list of time\nparameters, which you can pass to\n[an amp-mustache template](../../amp-mustache/amp-mustache.md)\nfor rendering. Refer to the\n[list below for each returned time parameter](#returned-time-parameters).\n\n<!--\n### Web Component\n\nTODO(https://go.amp.dev/issue/36619): Restore this section. We don't include it because we don't support <template> in Bento Web Components yet.\n\nAn older version of this file contains the removed section, though it's incorrect:\n\nhttps://github.com/ampproject/amphtml/blob/422d171e87571c4d125a2bf956e78e92444c10e8/extensions/amp-date-display/1.0/README.md\n-->\n\n### Preact/React Component\n\nThe examples below demonstrates use of the `<BentoDateDisplay>` as a functional component usable with the Preact or React libraries.\n\n#### Example: Import via npm\n\nInstall via npm:\n\n```sh\nnpm install @bentoproject/date-display\n```\n\n```javascript\nimport React from 'react';\nimport {BentoDateDisplay} from '@bentoproject/date-display/react';\nimport '@bentoproject/date-display/styles.css';\n\nfunction App() {\n  return (\n    <BentoDateDisplay\n      datetime={dateTime}\n      displayIn={displayIn}\n      locale={locale}\n      render={(date) => (\n        <div>{`ISO: ${date.iso}; locale: ${date.localeString}`}</div>\n      )}\n    />\n  );\n}\n```\n\n#### Interactivity and API usage\n\nThe Bento Date Display component does not have an imperative API. However, the Bento Date Display Preact/React component does accept a `render` prop that renders the consumer's template. This `render` prop should be a function which the Bento Date Display Preact/React component can use to render its template. The `render` callback will be provided a variety of date-related parameters for consumers to interpolate in the rendered template. See the [`render` prop section](#render) for more information.\n\n#### Layout and style\n\nThe Bento Date Display Preact/React component allows consumers to render their own templates. These templates may use inline styles, `<style>` tags, Preact/React components that import their own stylesheets.\n\n#### Props\n\n##### `datetime`\n\nRequired prop. Denotes the date and time as a Date, String, or Nuumber. If String, must be a\nstandard ISO 8601 date string (e.g. 2017-08-02T15:05:05.000Z) or the string `now`. If set to `now`, it will use the time the page loaded to render its template. If Number, must be a POSIX epoch value in milliseconds.\n\n##### `displayIn`\n\nOptional prop that can be either `\"utc\"` or `\"local\"` and defaults to `\"local\"`. This prop indicates what timezone to display the date in. If set to the value `\"utc\"`, the component will convert the given date to UTC.\n\n##### `locale`\n\nAn internationalization language string for each timer unit. The default value is `en` (for English). This prop supports all values that are supported by the user's browser.\n\n##### `localeOptions`\n\nThe `localeOptions` object supports all the options under [Intl.DateTimeFormat.options](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/DateTimeFormat#parameters) parameter that specifies the formatting style to use for `localeString` format.\n\nNote that if the `displayIn` prop is set to `utc`, the value of `localeOptions.timeZone` will automatically be converted to `UTC`.\n\n##### `render`\n\nOptional callback that should render a template. The callback will be provided an object with properties/values related to the date expressed in `datetime`.\nBy default, the Bento Date Display component will display the [`localeString` form of the Date](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/toLocaleString) for the given locale and localeOption.\nSee the [Returned Time Parameters section](#returned-time-parameters) for more details on how each property will be displayed.\n\n```typescript\n(dateParams: DateParams) => JSXInternal.Element\ninterface DateParams {\n  day: number;\n  dayName: string;\n  dayNameShort: string;\n  dayPeriod: string;\n  dayTwoDigit: string;\n  hour: number;\n  hour12: number;\n  hour12TwoDigit: string;\n  hourTwoDigit: string;\n  iso: string;\n  localeString: string;\n  minute: number;\n  minuteTwoDigit: string;\n  month: number;\n  monthName: string;\n  monthNameShort: string;\n  monthTwoDigit: string;\n  second: number;\n  secondTwoDigit: string;\n  timeZoneName: string;\n  timeZoneNameShort: string;\n  year: number;\n  yearTwoDi: string;\n}\n```\n\n### Returned Time Parameters\n\nThis table lists the format you can specify in your Mustache template:\n\n| Format            | Meaning                                                       |\n| ----------------- | ------------------------------------------------------------- |\n| day               | 1, 2, ...12, 13, etc.                                         |\n| dayName           | string,                                                       |\n| dayNameShort      | string,                                                       |\n| dayPeriod         | string,                                                       |\n| dayTwoDigit       | 01, 02, 03, ..., 12, 13, etc.                                 |\n| hour              | 0, 1, 2, 3, ..., 12, 13, ..., 22, 23                          |\n| hour12            | 1, 2, 3, ..., 12, 1, 2, ..., 11, 12                           |\n| hour12TwoDigit    | 01, 02, ..., 12, 01, 02, ..., 11, 12                          |\n| hourTwoDigit      | 00, 01, 02, ..., 12, 13, ..., 22, 23                          |\n| iso               | A standard ISO8601 date string e.g. 2019-01-23T15:31:21.213Z, |\n| localeString      | A string with a language sensitive representation.            |\n| minute            | 0, 1, 2, ..., 58, 59                                          |\n| minuteTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| month             | 1, 2, 3, ..., 12                                              |\n| monthName         | Internationalized month name string.                          |\n| monthNameShort    | Internationalized abbreviated month name string.,             |\n| monthTwoDigit     | 01, 02, ..., 11, 12                                           |\n| second            | 0, 1, 2, ..., 58, 59                                          |\n| secondTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| timeZoneName      | Internationalized timezone, like `Pacific Daylight Time`      |\n| timeZoneNameShort | Internationalized timezone, abbreviated, like `PST`           |\n| year              | 0, 1, 2, ..., 1999, 2000, 2001, etc.                          |\n| yearTwoDigit      | 00, 01, 02, ..., 17, 18, 19, ..., 98, 99                      |\n","readmeFilename":"README.md","gitHead":"55fa3e004e2aeece5faf9a68717228077c215a13","bugs":{"url":"https://github.com/ampproject/amphtml/issues"},"_id":"@bentoproject/date-display@1.2110281959.0","_nodeVersion":"16.13.0","_npmVersion":"8.1.0","dist":{"integrity":"sha512-STsIhgnMp6Jx5AeEf4u3ggkKXvl9EOb9Gj3URaRvf6o1DgzicWMDH29T8Vwj+Zt3N4FkTGxN9xjSLdumq4LrIQ==","shasum":"f9019861ec8ca3b969363b03daee343db633989f","tarball":"https://registry.npmjs.org/@bentoproject/date-display/-/date-display-1.2110281959.0.tgz","fileCount":27,"unpackedSize":2000072,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCxpkO8GXPGHGkDAimmDKSs74Tsc4hfqOkC2jnn53ztRQIgPAh+lA+Y98Yw0CjUkyt7LTesD0t5Zw8BByUiVpcudGQ="}]},"_npmUser":{"name":"bentoprojectbot","email":"bentobot@amp.dev"},"directories":{},"maintainers":[{"name":"bentoprojectbot","email":"bentobot@amp.dev"},{"name":"ampprojectbot","email":"bot@amp.dev"},{"name":"kristoferbaxter","email":"kbax@me.com"},{"name":"esth","email":"esther@amp.dev"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/date-display_1.2110281959.0_1635508331467_0.19380317345290066"},"_hasShrinkwrap":false},"1.2110290545.0":{"name":"@bentoproject/date-display","version":"1.2110290545.0","description":"Bento date-display Component","author":{"name":"Bento Authors"},"license":"Apache-2.0","main":"./dist/web-component.js","module":"./dist/web-component.module.js","exports":{".":"./web-component","./web-component":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./preact":{"import":"./dist/component-preact.module.js","require":"./dist/component-preact.js"},"./react":{"import":"./dist/component-react.module.js","require":"./dist/component-react.js"}},"repository":{"type":"git","url":"git+https://github.com/ampproject/amphtml.git","directory":"extensions/amp-date-display/1.0"},"homepage":"https://github.com/ampproject/amphtml/tree/main/extensions/amp-date-display/1.0","peerDependencies":{"preact":"^10.2.1","react":"^17.0.0"},"readme":"# Bento Date Display\n\n## Usage\n\nThe Bento Date Display component displays time data that you can render in your page. By providing specific [attributes](#attributes) in the\nBento Date Display tag, the Bento Date Display extension returns a list of time\nparameters, which you can pass to\n[an amp-mustache template](../../amp-mustache/amp-mustache.md)\nfor rendering. Refer to the\n[list below for each returned time parameter](#returned-time-parameters).\n\n<!--\n### Web Component\n\nTODO(https://go.amp.dev/issue/36619): Restore this section. We don't include it because we don't support <template> in Bento Web Components yet.\n\nAn older version of this file contains the removed section, though it's incorrect:\n\nhttps://github.com/ampproject/amphtml/blob/422d171e87571c4d125a2bf956e78e92444c10e8/extensions/amp-date-display/1.0/README.md\n-->\n\n### Preact/React Component\n\nThe examples below demonstrates use of the `<BentoDateDisplay>` as a functional component usable with the Preact or React libraries.\n\n#### Example: Import via npm\n\nInstall via npm:\n\n```sh\nnpm install @bentoproject/date-display\n```\n\n```javascript\nimport React from 'react';\nimport {BentoDateDisplay} from '@bentoproject/date-display/react';\nimport '@bentoproject/date-display/styles.css';\n\nfunction App() {\n  return (\n    <BentoDateDisplay\n      datetime={dateTime}\n      displayIn={displayIn}\n      locale={locale}\n      render={(date) => (\n        <div>{`ISO: ${date.iso}; locale: ${date.localeString}`}</div>\n      )}\n    />\n  );\n}\n```\n\n#### Interactivity and API usage\n\nThe Bento Date Display component does not have an imperative API. However, the Bento Date Display Preact/React component does accept a `render` prop that renders the consumer's template. This `render` prop should be a function which the Bento Date Display Preact/React component can use to render its template. The `render` callback will be provided a variety of date-related parameters for consumers to interpolate in the rendered template. See the [`render` prop section](#render) for more information.\n\n#### Layout and style\n\nThe Bento Date Display Preact/React component allows consumers to render their own templates. These templates may use inline styles, `<style>` tags, Preact/React components that import their own stylesheets.\n\n#### Props\n\n##### `datetime`\n\nRequired prop. Denotes the date and time as a Date, String, or Nuumber. If String, must be a\nstandard ISO 8601 date string (e.g. 2017-08-02T15:05:05.000Z) or the string `now`. If set to `now`, it will use the time the page loaded to render its template. If Number, must be a POSIX epoch value in milliseconds.\n\n##### `displayIn`\n\nOptional prop that can be either `\"utc\"` or `\"local\"` and defaults to `\"local\"`. This prop indicates what timezone to display the date in. If set to the value `\"utc\"`, the component will convert the given date to UTC.\n\n##### `locale`\n\nAn internationalization language string for each timer unit. The default value is `en` (for English). This prop supports all values that are supported by the user's browser.\n\n##### `localeOptions`\n\nThe `localeOptions` object supports all the options under [Intl.DateTimeFormat.options](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/DateTimeFormat#parameters) parameter that specifies the formatting style to use for `localeString` format.\n\nNote that if the `displayIn` prop is set to `utc`, the value of `localeOptions.timeZone` will automatically be converted to `UTC`.\n\n##### `render`\n\nOptional callback that should render a template. The callback will be provided an object with properties/values related to the date expressed in `datetime`.\nBy default, the Bento Date Display component will display the [`localeString` form of the Date](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/toLocaleString) for the given locale and localeOption.\nSee the [Returned Time Parameters section](#returned-time-parameters) for more details on how each property will be displayed.\n\n```typescript\n(dateParams: DateParams) => JSXInternal.Element\ninterface DateParams {\n  day: number;\n  dayName: string;\n  dayNameShort: string;\n  dayPeriod: string;\n  dayTwoDigit: string;\n  hour: number;\n  hour12: number;\n  hour12TwoDigit: string;\n  hourTwoDigit: string;\n  iso: string;\n  localeString: string;\n  minute: number;\n  minuteTwoDigit: string;\n  month: number;\n  monthName: string;\n  monthNameShort: string;\n  monthTwoDigit: string;\n  second: number;\n  secondTwoDigit: string;\n  timeZoneName: string;\n  timeZoneNameShort: string;\n  year: number;\n  yearTwoDi: string;\n}\n```\n\n### Returned Time Parameters\n\nThis table lists the format you can specify in your Mustache template:\n\n| Format            | Meaning                                                       |\n| ----------------- | ------------------------------------------------------------- |\n| day               | 1, 2, ...12, 13, etc.                                         |\n| dayName           | string,                                                       |\n| dayNameShort      | string,                                                       |\n| dayPeriod         | string,                                                       |\n| dayTwoDigit       | 01, 02, 03, ..., 12, 13, etc.                                 |\n| hour              | 0, 1, 2, 3, ..., 12, 13, ..., 22, 23                          |\n| hour12            | 1, 2, 3, ..., 12, 1, 2, ..., 11, 12                           |\n| hour12TwoDigit    | 01, 02, ..., 12, 01, 02, ..., 11, 12                          |\n| hourTwoDigit      | 00, 01, 02, ..., 12, 13, ..., 22, 23                          |\n| iso               | A standard ISO8601 date string e.g. 2019-01-23T15:31:21.213Z, |\n| localeString      | A string with a language sensitive representation.            |\n| minute            | 0, 1, 2, ..., 58, 59                                          |\n| minuteTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| month             | 1, 2, 3, ..., 12                                              |\n| monthName         | Internationalized month name string.                          |\n| monthNameShort    | Internationalized abbreviated month name string.,             |\n| monthTwoDigit     | 01, 02, ..., 11, 12                                           |\n| second            | 0, 1, 2, ..., 58, 59                                          |\n| secondTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| timeZoneName      | Internationalized timezone, like `Pacific Daylight Time`      |\n| timeZoneNameShort | Internationalized timezone, abbreviated, like `PST`           |\n| year              | 0, 1, 2, ..., 1999, 2000, 2001, etc.                          |\n| yearTwoDigit      | 00, 01, 02, ..., 17, 18, 19, ..., 98, 99                      |\n","readmeFilename":"README.md","gitHead":"1cc07336e186d25fc5fbfb2e8f7e12c4a5c79fe9","bugs":{"url":"https://github.com/ampproject/amphtml/issues"},"_id":"@bentoproject/date-display@1.2110290545.0","_nodeVersion":"16.13.0","_npmVersion":"8.1.0","dist":{"integrity":"sha512-raoU/kfaUObEB4quSRfBQAGRjEDIVN2f00I9dQdNA3it/fIfXrvHo9GmzUVgnEVNRm5HMwwI09+TJLC0IcqMjw==","shasum":"2a98e5bd90f4d83ec0422b65da7afef8a8f0d54d","tarball":"https://registry.npmjs.org/@bentoproject/date-display/-/date-display-1.2110290545.0.tgz","fileCount":27,"unpackedSize":2000072,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCx91K2yny6STHS/Ew+aK5IV+RKttwr7ZXqHBm0xA9c9gIhALIngTH7QMBZhevg1Rc0RTmWmm2j8x4gyo2zS/yf9+2u"}]},"_npmUser":{"name":"bentoprojectbot","email":"bentobot@amp.dev"},"directories":{},"maintainers":[{"name":"bentoprojectbot","email":"bentobot@amp.dev"},{"name":"ampprojectbot","email":"bot@amp.dev"},{"name":"kristoferbaxter","email":"kbax@me.com"},{"name":"esth","email":"esther@amp.dev"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/date-display_1.2110290545.0_1635592865392_0.8237689324444861"},"_hasShrinkwrap":false},"1.2111011823.0":{"name":"@bentoproject/date-display","version":"1.2111011823.0","description":"The Bento Date Display component displays time data that you can render in your page.","author":{"name":"Bento Authors"},"license":"Apache-2.0","main":"./dist/web-component.js","module":"./dist/web-component.module.js","exports":{".":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./web-component":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./preact":{"import":"./dist/component-preact.module.js","require":"./dist/component-preact.js"},"./react":{"import":"./dist/component-react.module.js","require":"./dist/component-react.js"}},"repository":{"type":"git","url":"git+https://github.com/ampproject/amphtml.git","directory":"extensions/amp-date-display/1.0"},"homepage":"https://github.com/ampproject/amphtml/tree/main/extensions/amp-date-display/1.0","peerDependencies":{"preact":"^10.2.1","react":"^17.0.0"},"readme":"# Bento Date Display\n\n## Usage\n\nThe Bento Date Display component displays time data that you can render in your page. By providing specific [attributes](#attributes) in the\nBento Date Display tag, the Bento Date Display extension returns a list of time\nparameters, which you can pass to\n[an amp-mustache template](../../amp-mustache/amp-mustache.md)\nfor rendering. Refer to the\n[list below for each returned time parameter](#returned-time-parameters).\n\n<!--\n### Web Component\n\nTODO(https://go.amp.dev/issue/36619): Restore this section. We don't include it because we don't support <template> in Bento Web Components yet.\n\nAn older version of this file contains the removed section, though it's incorrect:\n\nhttps://github.com/ampproject/amphtml/blob/422d171e87571c4d125a2bf956e78e92444c10e8/extensions/amp-date-display/1.0/README.md\n-->\n\n### Preact/React Component\n\nThe examples below demonstrates use of the `<BentoDateDisplay>` as a functional component usable with the Preact or React libraries.\n\n#### Example: Import via npm\n\nInstall via npm:\n\n```sh\nnpm install @bentoproject/date-display\n```\n\n```javascript\nimport React from 'react';\nimport {BentoDateDisplay} from '@bentoproject/date-display/react';\nimport '@bentoproject/date-display/styles.css';\n\nfunction App() {\n  return (\n    <BentoDateDisplay\n      datetime={dateTime}\n      displayIn={displayIn}\n      locale={locale}\n      render={(date) => (\n        <div>{`ISO: ${date.iso}; locale: ${date.localeString}`}</div>\n      )}\n    />\n  );\n}\n```\n\n#### Interactivity and API usage\n\nThe Bento Date Display component does not have an imperative API. However, the Bento Date Display Preact/React component does accept a `render` prop that renders the consumer's template. This `render` prop should be a function which the Bento Date Display Preact/React component can use to render its template. The `render` callback will be provided a variety of date-related parameters for consumers to interpolate in the rendered template. See the [`render` prop section](#render) for more information.\n\n#### Layout and style\n\nThe Bento Date Display Preact/React component allows consumers to render their own templates. These templates may use inline styles, `<style>` tags, Preact/React components that import their own stylesheets.\n\n#### Props\n\n##### `datetime`\n\nRequired prop. Denotes the date and time as a Date, String, or Nuumber. If String, must be a\nstandard ISO 8601 date string (e.g. 2017-08-02T15:05:05.000Z) or the string `now`. If set to `now`, it will use the time the page loaded to render its template. If Number, must be a POSIX epoch value in milliseconds.\n\n##### `displayIn`\n\nOptional prop that can be either `\"utc\"` or `\"local\"` and defaults to `\"local\"`. This prop indicates what timezone to display the date in. If set to the value `\"utc\"`, the component will convert the given date to UTC.\n\n##### `locale`\n\nAn internationalization language string for each timer unit. The default value is `en` (for English). This prop supports all values that are supported by the user's browser.\n\n##### `localeOptions`\n\nThe `localeOptions` object supports all the options under [Intl.DateTimeFormat.options](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/DateTimeFormat#parameters) parameter that specifies the formatting style to use for `localeString` format.\n\nNote that if the `displayIn` prop is set to `utc`, the value of `localeOptions.timeZone` will automatically be converted to `UTC`.\n\n##### `render`\n\nOptional callback that should render a template. The callback will be provided an object with properties/values related to the date expressed in `datetime`.\nBy default, the Bento Date Display component will display the [`localeString` form of the Date](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/toLocaleString) for the given locale and localeOption.\nSee the [Returned Time Parameters section](#returned-time-parameters) for more details on how each property will be displayed.\n\n```typescript\n(dateParams: DateParams) => JSXInternal.Element\ninterface DateParams {\n  day: number;\n  dayName: string;\n  dayNameShort: string;\n  dayPeriod: string;\n  dayTwoDigit: string;\n  hour: number;\n  hour12: number;\n  hour12TwoDigit: string;\n  hourTwoDigit: string;\n  iso: string;\n  localeString: string;\n  minute: number;\n  minuteTwoDigit: string;\n  month: number;\n  monthName: string;\n  monthNameShort: string;\n  monthTwoDigit: string;\n  second: number;\n  secondTwoDigit: string;\n  timeZoneName: string;\n  timeZoneNameShort: string;\n  year: number;\n  yearTwoDi: string;\n}\n```\n\n### Returned Time Parameters\n\nThis table lists the format you can specify in your Mustache template:\n\n| Format            | Meaning                                                       |\n| ----------------- | ------------------------------------------------------------- |\n| day               | 1, 2, ...12, 13, etc.                                         |\n| dayName           | string,                                                       |\n| dayNameShort      | string,                                                       |\n| dayPeriod         | string,                                                       |\n| dayTwoDigit       | 01, 02, 03, ..., 12, 13, etc.                                 |\n| hour              | 0, 1, 2, 3, ..., 12, 13, ..., 22, 23                          |\n| hour12            | 1, 2, 3, ..., 12, 1, 2, ..., 11, 12                           |\n| hour12TwoDigit    | 01, 02, ..., 12, 01, 02, ..., 11, 12                          |\n| hourTwoDigit      | 00, 01, 02, ..., 12, 13, ..., 22, 23                          |\n| iso               | A standard ISO8601 date string e.g. 2019-01-23T15:31:21.213Z, |\n| localeString      | A string with a language sensitive representation.            |\n| minute            | 0, 1, 2, ..., 58, 59                                          |\n| minuteTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| month             | 1, 2, 3, ..., 12                                              |\n| monthName         | Internationalized month name string.                          |\n| monthNameShort    | Internationalized abbreviated month name string.,             |\n| monthTwoDigit     | 01, 02, ..., 11, 12                                           |\n| second            | 0, 1, 2, ..., 58, 59                                          |\n| secondTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| timeZoneName      | Internationalized timezone, like `Pacific Daylight Time`      |\n| timeZoneNameShort | Internationalized timezone, abbreviated, like `PST`           |\n| year              | 0, 1, 2, ..., 1999, 2000, 2001, etc.                          |\n| yearTwoDigit      | 00, 01, 02, ..., 17, 18, 19, ..., 98, 99                      |\n","readmeFilename":"README.md","gitHead":"7bd4192edeb4ded8e78291b094118653b1a78939","bugs":{"url":"https://github.com/ampproject/amphtml/issues"},"_id":"@bentoproject/date-display@1.2111011823.0","_nodeVersion":"16.13.0","_npmVersion":"8.1.0","dist":{"integrity":"sha512-y7ZeOrsH1wftvgiYCAof7uyIH2pCAy1ZvFMFLzyfIT4qEetHzI2jTDg+QnP6Pb+VtT+EMQ1WkJz6cFNNL6FROA==","shasum":"a7cdcd70f3ec54bc7d97bcd222750e50c496fcfc","tarball":"https://registry.npmjs.org/@bentoproject/date-display/-/date-display-1.2111011823.0.tgz","fileCount":27,"unpackedSize":2000212,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIHN0zATQOufzKp/niR6AUigu+cFWwKHT2wGVK19zUW+UAiAqnabNMnjjItsILiSxGK2nx2ZbGyECPZQIs4gL85wzYA=="}]},"_npmUser":{"name":"bentoprojectbot","email":"bentobot@amp.dev"},"directories":{},"maintainers":[{"name":"bentoprojectbot","email":"bentobot@amp.dev"},{"name":"kristoferbaxter","email":"kbax@me.com"},{"name":"esth","email":"esther@amp.dev"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/date-display_1.2111011823.0_1635852282248_0.5337709415715626"},"_hasShrinkwrap":false},"1.2110152252.3":{"name":"@bentoproject/date-display","version":"1.2110152252.3","description":"The Bento Date Display component displays time data that you can render in your page.","author":{"name":"Bento Authors"},"license":"Apache-2.0","main":"./dist/web-component.js","module":"./dist/web-component.module.js","exports":{".":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./web-component":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./preact":{"import":"./dist/component-preact.module.js","require":"./dist/component-preact.js"},"./react":{"import":"./dist/component-react.module.js","require":"./dist/component-react.js"}},"repository":{"type":"git","url":"git+https://github.com/ampproject/amphtml.git","directory":"extensions/amp-date-display/1.0"},"homepage":"https://github.com/ampproject/amphtml/tree/main/extensions/amp-date-display/1.0","peerDependencies":{"preact":"^10.2.1","react":"^17.0.0"},"gitHead":"7a44c3f3047d8b5f5bcbcf5a86c4c1cb30184bdc","bugs":{"url":"https://github.com/ampproject/amphtml/issues"},"_id":"@bentoproject/date-display@1.2110152252.3","_nodeVersion":"16.13.0","_npmVersion":"8.1.0","dist":{"integrity":"sha512-NwoTnNW7oAuWltb0meLvIwYPhdb4HXmwH1EwGEhX0L3LuOWLSc2TfjhQRq655SeI+trMAexCPhz18/YuIg1CAg==","shasum":"cdd8d5af640faacb4a0ef6cdc0145dc3a44adec4","tarball":"https://registry.npmjs.org/@bentoproject/date-display/-/date-display-1.2110152252.3.tgz","fileCount":27,"unpackedSize":2000212,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDQI5s1WrXN2GmImJZxG/MUkZM8gqVjibrGyq5ST/9b/QIhAPIMYaWeA+lw0Y9EfSpOSz8IcXCQ6gp+MwDAl4sHo/BT"}]},"_npmUser":{"name":"bentoprojectbot","email":"bentobot@amp.dev"},"directories":{},"maintainers":[{"name":"bentoprojectbot","email":"bentobot@amp.dev"},{"name":"kristoferbaxter","email":"kbax@me.com"},{"name":"esth","email":"esther@amp.dev"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/date-display_1.2110152252.3_1635890634661_0.7511121211136123"},"_hasShrinkwrap":false},"1.2110212130.2":{"name":"@bentoproject/date-display","version":"1.2110212130.2","description":"The Bento Date Display component displays time data that you can render in your page.","author":{"name":"Bento Authors"},"license":"Apache-2.0","main":"./dist/web-component.js","module":"./dist/web-component.module.js","exports":{".":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./web-component":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./preact":{"import":"./dist/component-preact.module.js","require":"./dist/component-preact.js"},"./react":{"import":"./dist/component-react.module.js","require":"./dist/component-react.js"}},"repository":{"type":"git","url":"git+https://github.com/ampproject/amphtml.git","directory":"extensions/amp-date-display/1.0"},"homepage":"https://github.com/ampproject/amphtml/tree/main/extensions/amp-date-display/1.0","peerDependencies":{"preact":"^10.2.1","react":"^17.0.0"},"gitHead":"7a44c3f3047d8b5f5bcbcf5a86c4c1cb30184bdc","bugs":{"url":"https://github.com/ampproject/amphtml/issues"},"_id":"@bentoproject/date-display@1.2110212130.2","_nodeVersion":"16.13.0","_npmVersion":"8.1.0","dist":{"integrity":"sha512-b53p3oSsYw0iPzELlsYGAKvWGcMtFWWfe+k+Nt55TXBV93A4EHydIGRBf+ucEytJJnJhS9ASgRigm4up2XZx9A==","shasum":"8cf40bdf56d4bcdb588d65d4a66a993283075ab3","tarball":"https://registry.npmjs.org/@bentoproject/date-display/-/date-display-1.2110212130.2.tgz","fileCount":27,"unpackedSize":2000212,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDXupRH950Fe5yizdL8HdyYO3JVN0nG1WbGkDq2nYWGgQIgLPJK+u+hpuV0XB/lm2O2aBUDpFfyVFuib7Z1pq7btyo="}]},"_npmUser":{"name":"bentoprojectbot","email":"bentobot@amp.dev"},"directories":{},"maintainers":[{"name":"bentoprojectbot","email":"bentobot@amp.dev"},{"name":"kristoferbaxter","email":"kbax@me.com"},{"name":"esth","email":"esther@amp.dev"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/date-display_1.2110212130.2_1635891293066_0.24050628241383887"},"_hasShrinkwrap":false},"1.2111022043.0":{"name":"@bentoproject/date-display","version":"1.2111022043.0","description":"The Bento Date Display component displays time data that you can render in your page.","author":{"name":"Bento Authors"},"license":"Apache-2.0","main":"./dist/web-component.js","module":"./dist/web-component.module.js","exports":{".":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./web-component":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./preact":{"import":"./dist/component-preact.module.js","require":"./dist/component-preact.js"},"./react":{"import":"./dist/component-react.module.js","require":"./dist/component-react.js"}},"repository":{"type":"git","url":"git+https://github.com/ampproject/amphtml.git","directory":"extensions/amp-date-display/1.0"},"homepage":"https://github.com/ampproject/amphtml/tree/main/extensions/amp-date-display/1.0","peerDependencies":{"preact":"^10.2.1","react":"^17.0.0"},"readme":"# Bento Date Display\n\n## Usage\n\nThe Bento Date Display component displays time data that you can render in your page. By providing specific [attributes](#attributes) in the\nBento Date Display tag, the Bento Date Display extension returns a list of time\nparameters, which you can pass to\n[an amp-mustache template](../../amp-mustache/amp-mustache.md)\nfor rendering. Refer to the\n[list below for each returned time parameter](#returned-time-parameters).\n\n<!--\n### Web Component\n\nTODO(https://go.amp.dev/issue/36619): Restore this section. We don't include it because we don't support <template> in Bento Web Components yet.\n\nAn older version of this file contains the removed section, though it's incorrect:\n\nhttps://github.com/ampproject/amphtml/blob/422d171e87571c4d125a2bf956e78e92444c10e8/extensions/amp-date-display/1.0/README.md\n-->\n\n### Preact/React Component\n\nThe examples below demonstrates use of the `<BentoDateDisplay>` as a functional component usable with the Preact or React libraries.\n\n#### Example: Import via npm\n\nInstall via npm:\n\n```sh\nnpm install @bentoproject/date-display\n```\n\n```javascript\nimport React from 'react';\nimport {BentoDateDisplay} from '@bentoproject/date-display/react';\nimport '@bentoproject/date-display/styles.css';\n\nfunction App() {\n  return (\n    <BentoDateDisplay\n      datetime={dateTime}\n      displayIn={displayIn}\n      locale={locale}\n      render={(date) => (\n        <div>{`ISO: ${date.iso}; locale: ${date.localeString}`}</div>\n      )}\n    />\n  );\n}\n```\n\n#### Interactivity and API usage\n\nThe Bento Date Display component does not have an imperative API. However, the Bento Date Display Preact/React component does accept a `render` prop that renders the consumer's template. This `render` prop should be a function which the Bento Date Display Preact/React component can use to render its template. The `render` callback will be provided a variety of date-related parameters for consumers to interpolate in the rendered template. See the [`render` prop section](#render) for more information.\n\n#### Layout and style\n\nThe Bento Date Display Preact/React component allows consumers to render their own templates. These templates may use inline styles, `<style>` tags, Preact/React components that import their own stylesheets.\n\n#### Props\n\n##### `datetime`\n\nRequired prop. Denotes the date and time as a Date, String, or Nuumber. If String, must be a\nstandard ISO 8601 date string (e.g. 2017-08-02T15:05:05.000Z) or the string `now`. If set to `now`, it will use the time the page loaded to render its template. If Number, must be a POSIX epoch value in milliseconds.\n\n##### `displayIn`\n\nOptional prop that can be either `\"utc\"` or `\"local\"` and defaults to `\"local\"`. This prop indicates what timezone to display the date in. If set to the value `\"utc\"`, the component will convert the given date to UTC.\n\n##### `locale`\n\nAn internationalization language string for each timer unit. The default value is `en` (for English). This prop supports all values that are supported by the user's browser.\n\n##### `localeOptions`\n\nThe `localeOptions` object supports all the options under [Intl.DateTimeFormat.options](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/DateTimeFormat#parameters) parameter that specifies the formatting style to use for `localeString` format.\n\nNote that if the `displayIn` prop is set to `utc`, the value of `localeOptions.timeZone` will automatically be converted to `UTC`.\n\n##### `render`\n\nOptional callback that should render a template. The callback will be provided an object with properties/values related to the date expressed in `datetime`.\nBy default, the Bento Date Display component will display the [`localeString` form of the Date](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/toLocaleString) for the given locale and localeOption.\nSee the [Returned Time Parameters section](#returned-time-parameters) for more details on how each property will be displayed.\n\n```typescript\n(dateParams: DateParams) => JSXInternal.Element\ninterface DateParams {\n  day: number;\n  dayName: string;\n  dayNameShort: string;\n  dayPeriod: string;\n  dayTwoDigit: string;\n  hour: number;\n  hour12: number;\n  hour12TwoDigit: string;\n  hourTwoDigit: string;\n  iso: string;\n  localeString: string;\n  minute: number;\n  minuteTwoDigit: string;\n  month: number;\n  monthName: string;\n  monthNameShort: string;\n  monthTwoDigit: string;\n  second: number;\n  secondTwoDigit: string;\n  timeZoneName: string;\n  timeZoneNameShort: string;\n  year: number;\n  yearTwoDi: string;\n}\n```\n\n### Returned Time Parameters\n\nThis table lists the format you can specify in your Mustache template:\n\n| Format            | Meaning                                                       |\n| ----------------- | ------------------------------------------------------------- |\n| day               | 1, 2, ...12, 13, etc.                                         |\n| dayName           | string,                                                       |\n| dayNameShort      | string,                                                       |\n| dayPeriod         | string,                                                       |\n| dayTwoDigit       | 01, 02, 03, ..., 12, 13, etc.                                 |\n| hour              | 0, 1, 2, 3, ..., 12, 13, ..., 22, 23                          |\n| hour12            | 1, 2, 3, ..., 12, 1, 2, ..., 11, 12                           |\n| hour12TwoDigit    | 01, 02, ..., 12, 01, 02, ..., 11, 12                          |\n| hourTwoDigit      | 00, 01, 02, ..., 12, 13, ..., 22, 23                          |\n| iso               | A standard ISO8601 date string e.g. 2019-01-23T15:31:21.213Z, |\n| localeString      | A string with a language sensitive representation.            |\n| minute            | 0, 1, 2, ..., 58, 59                                          |\n| minuteTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| month             | 1, 2, 3, ..., 12                                              |\n| monthName         | Internationalized month name string.                          |\n| monthNameShort    | Internationalized abbreviated month name string.,             |\n| monthTwoDigit     | 01, 02, ..., 11, 12                                           |\n| second            | 0, 1, 2, ..., 58, 59                                          |\n| secondTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| timeZoneName      | Internationalized timezone, like `Pacific Daylight Time`      |\n| timeZoneNameShort | Internationalized timezone, abbreviated, like `PST`           |\n| year              | 0, 1, 2, ..., 1999, 2000, 2001, etc.                          |\n| yearTwoDigit      | 00, 01, 02, ..., 17, 18, 19, ..., 98, 99                      |\n","readmeFilename":"README.md","gitHead":"f4d548031e8e20aaea8ade649d3394d56518b769","bugs":{"url":"https://github.com/ampproject/amphtml/issues"},"_id":"@bentoproject/date-display@1.2111022043.0","_nodeVersion":"16.13.0","_npmVersion":"8.1.0","dist":{"integrity":"sha512-SKdk6YiUvJrWZy6vBdgyKpI24K0KgkwZUGvb4bmvKUI0nq1OMlypxUrbb3bL8iFucviuxq0dWy+0sFxaU+211w==","shasum":"62c27d24a05d8472b3ea15f5072ef128cef00d40","tarball":"https://registry.npmjs.org/@bentoproject/date-display/-/date-display-1.2111022043.0.tgz","fileCount":27,"unpackedSize":2000212,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCnmhxlzb4jf0b8o6v8AMuyTe+26vojj7J87Xnwia2soQIhALY0+lSQy23NOvCUzhfD6NMk7wrdpIhCvL1NP1osgzg0"}]},"_npmUser":{"name":"bentoprojectbot","email":"bentobot@amp.dev"},"directories":{},"maintainers":[{"name":"bentoprojectbot","email":"bentobot@amp.dev"},{"name":"kristoferbaxter","email":"kbax@me.com"},{"name":"esth","email":"esther@amp.dev"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/date-display_1.2111022043.0_1635938459925_0.7621620190739002"},"_hasShrinkwrap":false},"1.2111180040.0":{"name":"@bentoproject/date-display","version":"1.2111180040.0","description":"Displays time data that you can render in your page.","author":{"name":"Bento Authors"},"license":"Apache-2.0","main":"./dist/web-component.js","module":"./dist/web-component.module.js","exports":{".":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./web-component":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./preact":{"import":"./dist/component-preact.module.js","require":"./dist/component-preact.js"},"./react":{"import":"./dist/component-react.module.js","require":"./dist/component-react.js"}},"repository":{"type":"git","url":"git+https://github.com/ampproject/amphtml.git","directory":"extensions/amp-date-display/1.0"},"homepage":"https://github.com/ampproject/amphtml/tree/main/extensions/amp-date-display/1.0","peerDependencies":{"preact":"^10.2.1","react":"^17.0.0"},"readme":"# Bento Date Display\n\nDisplays time data that you can render in your page. By providing specific [attributes](#attributes) in the Bento Date Display tag, the Bento Date Display extension returns a list of time parameters, which you can pass to [an amp-mustache template](../../amp-mustache/amp-mustache.md) for rendering. Refer to the [list below for each returned time parameter](#returned-time-parameters).\n\n## Web Component\n\nWe don't support the web component version of `bento-date-display` since `<template>` support is still being designed. This effort can be tracked in this [issue](https://go.amp.dev/issue/36619).\n\n<!--\nAn older version of this file contains the removed section, though it's incorrect:\n\nhttps://github.com/ampproject/amphtml/blob/422d171e87571c4d125a2bf956e78e92444c10e8/extensions/amp-date-display/1.0/README.md\n-->\n\n---\n\n## Preact/React Component\n\n### Import via npm\n\n```sh\nnpm install @bentoproject/date-display\n```\n\n```javascript\nimport React from 'react';\nimport {BentoDateDisplay} from '@bentoproject/date-display/react';\nimport '@bentoproject/date-display/styles.css';\n\nfunction App() {\n  return (\n    <BentoDateDisplay\n      datetime={dateTime}\n      displayIn={displayIn}\n      locale={locale}\n      render={(date) => (\n        <div>{`ISO: ${date.iso}; locale: ${date.localeString}`}</div>\n      )}\n    />\n  );\n}\n```\n\n### Interactivity and API usage\n\nThe Bento Date Display component does not have an imperative API. However, the Bento Date Display Preact/React component does accept a `render` prop that renders the consumer's template. This `render` prop should be a function which the Bento Date Display Preact/React component can use to render its template. The `render` callback will be provided a variety of date-related parameters for consumers to interpolate in the rendered template. See the [`render` prop section](#render) for more information.\n\n### Layout and style\n\nThe Bento Date Display Preact/React component allows consumers to render their own templates. These templates may use inline styles, `<style>` tags, Preact/React components that import their own stylesheets.\n\n### Props\n\n#### `datetime`\n\nRequired prop. Denotes the date and time as a Date, String, or Nuumber. If String, must be a standard ISO 8601 date string (e.g. 2017-08-02T15:05:05.000Z) or the string `now`. If set to `now`, it will use the time the page loaded to render its template. If Number, must be a POSIX epoch value in milliseconds.\n\n#### `displayIn`\n\nOptional prop that can be either `\"utc\"` or `\"local\"` and defaults to `\"local\"`. This prop indicates what timezone to display the date in. If set to the value `\"utc\"`, the component will convert the given date to UTC.\n\n#### `locale`\n\nAn internationalization language string for each timer unit. The default value is `en` (for English). This prop supports all values that are supported by the user's browser.\n\n#### `localeOptions`\n\nThe `localeOptions` object supports all the options under [Intl.DateTimeFormat.options](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/DateTimeFormat#parameters) parameter that specifies the formatting style to use for `localeString` format.\n\nNote that if the `displayIn` prop is set to `utc`, the value of `localeOptions.timeZone` will automatically be converted to `UTC`.\n\n#### `render`\n\nOptional callback that should render a template. The callback will be provided an object with properties/values related to the date expressed in `datetime`.\n\nBy default, the Bento Date Display component will display the [`localeString` form of the Date](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/toLocaleString) for the given locale and localeOption. See the [Returned Time Parameters section](#returned-time-parameters) for more details on how each property will be displayed.\n\n```typescript\n(dateParams: DateParams) => JSXInternal.Element\ninterface DateParams {\n  day: number;\n  dayName: string;\n  dayNameShort: string;\n  dayPeriod: string;\n  dayTwoDigit: string;\n  hour: number;\n  hour12: number;\n  hour12TwoDigit: string;\n  hourTwoDigit: string;\n  iso: string;\n  localeString: string;\n  minute: number;\n  minuteTwoDigit: string;\n  month: number;\n  monthName: string;\n  monthNameShort: string;\n  monthTwoDigit: string;\n  second: number;\n  secondTwoDigit: string;\n  timeZoneName: string;\n  timeZoneNameShort: string;\n  year: number;\n  yearTwoDi: string;\n}\n```\n\n### Returned Time Parameters\n\nThis table lists the format you can specify in your Mustache template:\n\n| Format            | Meaning                                                       |\n| ----------------- | ------------------------------------------------------------- |\n| day               | 1, 2, ...12, 13, etc.                                         |\n| dayName           | string,                                                       |\n| dayNameShort      | string,                                                       |\n| dayPeriod         | string,                                                       |\n| dayTwoDigit       | 01, 02, 03, ..., 12, 13, etc.                                 |\n| hour              | 0, 1, 2, 3, ..., 12, 13, ..., 22, 23                          |\n| hour12            | 1, 2, 3, ..., 12, 1, 2, ..., 11, 12                           |\n| hour12TwoDigit    | 01, 02, ..., 12, 01, 02, ..., 11, 12                          |\n| hourTwoDigit      | 00, 01, 02, ..., 12, 13, ..., 22, 23                          |\n| iso               | A standard ISO8601 date string e.g. 2019-01-23T15:31:21.213Z, |\n| localeString      | A string with a language sensitive representation.            |\n| minute            | 0, 1, 2, ..., 58, 59                                          |\n| minuteTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| month             | 1, 2, 3, ..., 12                                              |\n| monthName         | Internationalized month name string.                          |\n| monthNameShort    | Internationalized abbreviated month name string.,             |\n| monthTwoDigit     | 01, 02, ..., 11, 12                                           |\n| second            | 0, 1, 2, ..., 58, 59                                          |\n| secondTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| timeZoneName      | Internationalized timezone, like `Pacific Daylight Time`      |\n| timeZoneNameShort | Internationalized timezone, abbreviated, like `PST`           |\n| year              | 0, 1, 2, ..., 1999, 2000, 2001, etc.                          |\n| yearTwoDigit      | 00, 01, 02, ..., 17, 18, 19, ..., 98, 99                      |\n","readmeFilename":"README.md","gitHead":"f53cd87e15233c147123f81aad5da820c5581752","bugs":{"url":"https://github.com/ampproject/amphtml/issues"},"_id":"@bentoproject/date-display@1.2111180040.0","_nodeVersion":"16.13.0","_npmVersion":"8.1.0","dist":{"integrity":"sha512-P+8u+eIFBiv3Serh4WaKpRRTfM+1xMLaL2m6esbQbfrtTIMIyL2C/ToWwBpsCzFS170wRsEidekZYBEDjehQpQ==","shasum":"a4e05c3dfbf03cbe26dc5ec6b8b7beb847db44df","tarball":"https://registry.npmjs.org/@bentoproject/date-display/-/date-display-1.2111180040.0.tgz","fileCount":27,"unpackedSize":1880214,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCgCA8c7riMn54mqzf6r68WJMjQ+l1tzwLWnoZZHvIB2wIhAJYXF1LL2m1pANf6rduWKTGhIKsbW/rCPHtItmYhlFd/"}]},"_npmUser":{"name":"bentoprojectbot","email":"bentobot@amp.dev"},"directories":{},"maintainers":[{"name":"bentoprojectbot","email":"bentobot@amp.dev"},{"name":"kristoferbaxter","email":"kbax@me.com"},{"name":"esth","email":"esther@amp.dev"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/date-display_1.2111180040.0_1637270822489_0.04621496193525676"},"_hasShrinkwrap":false},"1.2111060251.3":{"name":"@bentoproject/date-display","version":"1.2111060251.3","description":"Displays time data that you can render in your page.","author":{"name":"Bento Authors"},"license":"Apache-2.0","main":"./dist/web-component.js","module":"./dist/web-component.module.js","exports":{".":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./web-component":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./preact":{"import":"./dist/component-preact.module.js","require":"./dist/component-preact.js"},"./react":{"import":"./dist/component-react.module.js","require":"./dist/component-react.js"}},"repository":{"type":"git","url":"git+https://github.com/ampproject/amphtml.git","directory":"extensions/amp-date-display/1.0"},"homepage":"https://github.com/ampproject/amphtml/tree/main/extensions/amp-date-display/1.0","peerDependencies":{"preact":"^10.2.1","react":"^17.0.0"},"gitHead":"f53cd87e15233c147123f81aad5da820c5581752","bugs":{"url":"https://github.com/ampproject/amphtml/issues"},"_id":"@bentoproject/date-display@1.2111060251.3","_nodeVersion":"16.13.0","_npmVersion":"8.1.0","dist":{"integrity":"sha512-fSTdo/36yRax5fdpplMWFYYOxU7YvltDoY7+9DhlbpN5mPV47cDRA5MVTXgnL3+pkwwZTm7Otiecl9l1yEbpow==","shasum":"0f751dfc8056e26fa6dd00ad70ecbb4db70ff2b1","tarball":"https://registry.npmjs.org/@bentoproject/date-display/-/date-display-1.2111060251.3.tgz","fileCount":27,"unpackedSize":1880214,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhlsiyCRA9TVsSAnZWagAAJogP/ie0giWSQMg1xRzzN2mJ\nf7d8VlcbcCgpkRmNGKnm0xHp4TUxHdDZFu6+Stb6uHUairWvB9GI7Ib2TW0X\nrNTJEnls6ykuOqNkXXCJciPjnWlnEEJ4uTms1HL56Ouw8KStwmkWfoSdzI9W\nloqBYKNF56QAZAjubJVgPIevKQlJYKX6WpXxlkd0rZ7kiInVvJpwdlS6WGkW\nGdnKH1voCnjygfj9jtYVK4HZopS7zumjtLFAin81dhI7zLrx+eLRO74DT0KO\nh8Jz+hFpHCW4/jktJ2NLwZHJdcLn1MiIsrOz6Ilfyz90U1bz3Brd86GFqovU\nEYEHQ99E/OCQ6blq0Z1k3tAxG0EddK7ecAG3yIzHSsCRpIJUqWf5AaOcI3qi\n0NIg2vtz1r3/Mx7/ontUtVOpqYVofAQt0B5E4bA3GbtTp8jqWTN6AEpXYiPi\nKswr/gfQKI24zkMtqyRdDHx/ZBifZaxXc8POsEO0ColAmBdMEN8D7Ob7xZMn\nJaKOHm51T21Y61/UsEI7qSX3S4kIJKhjuafs8Aqkl5jqMmzlCDYGpS1P6OXF\nCN+ARARShlqgb7bm1KQyZKc+HXGRA4u7aQQl9QIw4ejEhW5IlRubAZaCEwAl\nqycbvM+WVu6uV9AJq7B6RXRkgAMNdErM9StlFAesOPbY/+eQd/QmyxvyK1Yw\nL36A\r\n=oNAU\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIEZa/hPlbyJrxssmE/KqhzT1193A9LfQe0kVJ4xUa8OVAiBF8wceresY6pL8VkNGpZFWMZwc8Uq7h+DQohyuWun61Q=="}]},"_npmUser":{"name":"bentoprojectbot","email":"bentobot@amp.dev"},"directories":{},"maintainers":[{"name":"bentoprojectbot","email":"bentobot@amp.dev"},{"name":"kristoferbaxter","email":"kbax@me.com"},{"name":"esth","email":"esther@amp.dev"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/date-display_1.2111060251.3_1637271729776_0.37079899695577057"},"_hasShrinkwrap":false},"1.2111182332.0":{"name":"@bentoproject/date-display","version":"1.2111182332.0","description":"Displays time data that you can render in your page.","author":{"name":"Bento Authors"},"license":"Apache-2.0","main":"./dist/web-component.js","module":"./dist/web-component.module.js","exports":{".":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./web-component":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./preact":{"import":"./dist/component-preact.module.js","require":"./dist/component-preact.js"},"./react":{"import":"./dist/component-react.module.js","require":"./dist/component-react.js"}},"repository":{"type":"git","url":"git+https://github.com/ampproject/amphtml.git","directory":"extensions/amp-date-display/1.0"},"homepage":"https://github.com/ampproject/amphtml/tree/main/extensions/amp-date-display/1.0","peerDependencies":{"preact":"^10.2.1","react":"^17.0.0"},"readme":"# Bento Date Display\n\nDisplays time data that you can render in your page. By providing specific [attributes](#attributes) in the Bento Date Display tag, the Bento Date Display extension returns a list of time parameters, which you can pass to [an amp-mustache template](../../amp-mustache/amp-mustache.md) for rendering. Refer to the [list below for each returned time parameter](#returned-time-parameters).\n\n## Web Component\n\nWe don't support the web component version of `bento-date-display` since `<template>` support is still being designed. This effort can be tracked in this [issue](https://go.amp.dev/issue/36619).\n\n<!--\nAn older version of this file contains the removed section, though it's incorrect:\n\nhttps://github.com/ampproject/amphtml/blob/422d171e87571c4d125a2bf956e78e92444c10e8/extensions/amp-date-display/1.0/README.md\n-->\n\n---\n\n## Preact/React Component\n\n### Import via npm\n\n```sh\nnpm install @bentoproject/date-display\n```\n\n```javascript\nimport React from 'react';\nimport {BentoDateDisplay} from '@bentoproject/date-display/react';\nimport '@bentoproject/date-display/styles.css';\n\nfunction App() {\n  return (\n    <BentoDateDisplay\n      datetime={dateTime}\n      displayIn={displayIn}\n      locale={locale}\n      render={(date) => (\n        <div>{`ISO: ${date.iso}; locale: ${date.localeString}`}</div>\n      )}\n    />\n  );\n}\n```\n\n### Interactivity and API usage\n\nThe Bento Date Display component does not have an imperative API. However, the Bento Date Display Preact/React component does accept a `render` prop that renders the consumer's template. This `render` prop should be a function which the Bento Date Display Preact/React component can use to render its template. The `render` callback will be provided a variety of date-related parameters for consumers to interpolate in the rendered template. See the [`render` prop section](#render) for more information.\n\n### Layout and style\n\nThe Bento Date Display Preact/React component allows consumers to render their own templates. These templates may use inline styles, `<style>` tags, Preact/React components that import their own stylesheets.\n\n### Props\n\n#### `datetime`\n\nRequired prop. Denotes the date and time as a Date, String, or Nuumber. If String, must be a standard ISO 8601 date string (e.g. 2017-08-02T15:05:05.000Z) or the string `now`. If set to `now`, it will use the time the page loaded to render its template. If Number, must be a POSIX epoch value in milliseconds.\n\n#### `displayIn`\n\nOptional prop that can be either `\"utc\"` or `\"local\"` and defaults to `\"local\"`. This prop indicates what timezone to display the date in. If set to the value `\"utc\"`, the component will convert the given date to UTC.\n\n#### `locale`\n\nAn internationalization language string for each timer unit. The default value is `en` (for English). This prop supports all values that are supported by the user's browser.\n\n#### `localeOptions`\n\nThe `localeOptions` object supports all the options under [Intl.DateTimeFormat.options](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/DateTimeFormat#parameters) parameter that specifies the formatting style to use for `localeString` format.\n\nNote that if the `displayIn` prop is set to `utc`, the value of `localeOptions.timeZone` will automatically be converted to `UTC`.\n\n#### `render`\n\nOptional callback that should render a template. The callback will be provided an object with properties/values related to the date expressed in `datetime`.\n\nBy default, the Bento Date Display component will display the [`localeString` form of the Date](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/toLocaleString) for the given locale and localeOption. See the [Returned Time Parameters section](#returned-time-parameters) for more details on how each property will be displayed.\n\n```typescript\n(dateParams: DateParams) => JSXInternal.Element\ninterface DateParams {\n  day: number;\n  dayName: string;\n  dayNameShort: string;\n  dayPeriod: string;\n  dayTwoDigit: string;\n  hour: number;\n  hour12: number;\n  hour12TwoDigit: string;\n  hourTwoDigit: string;\n  iso: string;\n  localeString: string;\n  minute: number;\n  minuteTwoDigit: string;\n  month: number;\n  monthName: string;\n  monthNameShort: string;\n  monthTwoDigit: string;\n  second: number;\n  secondTwoDigit: string;\n  timeZoneName: string;\n  timeZoneNameShort: string;\n  year: number;\n  yearTwoDi: string;\n}\n```\n\n### Returned Time Parameters\n\nThis table lists the format you can specify in your Mustache template:\n\n| Format            | Meaning                                                       |\n| ----------------- | ------------------------------------------------------------- |\n| day               | 1, 2, ...12, 13, etc.                                         |\n| dayName           | string,                                                       |\n| dayNameShort      | string,                                                       |\n| dayPeriod         | string,                                                       |\n| dayTwoDigit       | 01, 02, 03, ..., 12, 13, etc.                                 |\n| hour              | 0, 1, 2, 3, ..., 12, 13, ..., 22, 23                          |\n| hour12            | 1, 2, 3, ..., 12, 1, 2, ..., 11, 12                           |\n| hour12TwoDigit    | 01, 02, ..., 12, 01, 02, ..., 11, 12                          |\n| hourTwoDigit      | 00, 01, 02, ..., 12, 13, ..., 22, 23                          |\n| iso               | A standard ISO8601 date string e.g. 2019-01-23T15:31:21.213Z, |\n| localeString      | A string with a language sensitive representation.            |\n| minute            | 0, 1, 2, ..., 58, 59                                          |\n| minuteTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| month             | 1, 2, 3, ..., 12                                              |\n| monthName         | Internationalized month name string.                          |\n| monthNameShort    | Internationalized abbreviated month name string.,             |\n| monthTwoDigit     | 01, 02, ..., 11, 12                                           |\n| second            | 0, 1, 2, ..., 58, 59                                          |\n| secondTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| timeZoneName      | Internationalized timezone, like `Pacific Daylight Time`      |\n| timeZoneNameShort | Internationalized timezone, abbreviated, like `PST`           |\n| year              | 0, 1, 2, ..., 1999, 2000, 2001, etc.                          |\n| yearTwoDigit      | 00, 01, 02, ..., 17, 18, 19, ..., 98, 99                      |\n","readmeFilename":"README.md","gitHead":"34ebd943d9b16506b7a515b38941fdd8357bd288","bugs":{"url":"https://github.com/ampproject/amphtml/issues"},"_id":"@bentoproject/date-display@1.2111182332.0","_nodeVersion":"16.13.0","_npmVersion":"8.1.0","dist":{"integrity":"sha512-wmoPIiDM9Nmlze4BAv4uAqYv6HUkg7DZJNLP5IDkLpmGnriOUDLtXux0gZN9H1rCniKoz176xMaKukAgh5dQuw==","shasum":"4c84160d3d5fd5dbf9f59bae29dc3bc1e8d9dd94","tarball":"https://registry.npmjs.org/@bentoproject/date-display/-/date-display-1.2111182332.0.tgz","fileCount":27,"unpackedSize":1892820,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhl5dtCRA9TVsSAnZWagAAH9MP/364BvLfsFcfjy7nNvBR\nECB9vddsHCzJlR//t8SjQ1tZ1AcWXwqDIieqDOt1aOhpmWdWaotpkvmnyij5\n96Hl+F006dWNaGIMdOSQQ+pXDBkFbCpttnn6w8qxGFfrvlfrxRYmihvZTPlQ\n8F7kcr+3nkNdqwdxUxdNhdO9xX+pGxeiOtEEPLS5MA9tqMatv7AGQfUxIaI0\nCaKOEQnuy/vAwme4qxsWgJ03fhaXd2lKfnLkw0ZJOplh1vmo7dI242i2HRLL\na4grGQAZUG+nR5jF75fZ+PFYZczpPHE+XGwV4RKbMBSqvfurxVrpA9OkXtjl\ni8QRV71x14mS7L+O5bRhQvGaerLcY2kQC32lcGoVM/84DRO3a0HIBQOMb/fC\nlE78eVvBYU7vKkYN70ZVm+zJsH1nXtFDHNIUWYuItFs69NoWbThxbt51+wWA\ngfmndamYY7kpN42YLNWGmkDNuESojoeQgNdgEIeV7Ho8D9xSB5kc6jYhAHi/\nbxG+FjJoKuoW0oV6C3GJEwAgyYm4xgsB3mOdxUfDNhl3RpV84UigJta94Von\nLxVkTstxFRAlvq5Q3Xo1JWuNuORNKwoZrOjHekg9IXl7NOeK/CPhyy1AYsuQ\nT/yf2QVebsLPOhaRzhpBvDH2GXuAoWZAZSpQMW0WmVfMAV8eJmNj8QEabzMn\nSHxr\r\n=QlVX\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCyBkIZmxNpNhShWgsPH297HPK2c6BUIqCGMOcCUB3jqgIgJXGvxwH3mdc+eiksxCj3wSWQWyoSyGtZkCLLffptFk8="}]},"_npmUser":{"name":"bentoprojectbot","email":"bentobot@amp.dev"},"directories":{},"maintainers":[{"name":"bentoprojectbot","email":"bentobot@amp.dev"},{"name":"kristoferbaxter","email":"kbax@me.com"},{"name":"esth","email":"esther@amp.dev"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/date-display_1.2111182332.0_1637324653700_0.9042643636422918"},"_hasShrinkwrap":false},"1.2111060251.9":{"name":"@bentoproject/date-display","version":"1.2111060251.9","description":"Displays time data that you can render in your page.","author":{"name":"Bento Authors"},"license":"Apache-2.0","main":"./dist/web-component.js","module":"./dist/web-component.module.js","exports":{".":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./web-component":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./preact":{"import":"./dist/component-preact.module.js","require":"./dist/component-preact.js"},"./react":{"import":"./dist/component-react.module.js","require":"./dist/component-react.js"}},"repository":{"type":"git","url":"git+https://github.com/ampproject/amphtml.git","directory":"extensions/amp-date-display/1.0"},"homepage":"https://github.com/ampproject/amphtml/tree/main/extensions/amp-date-display/1.0","peerDependencies":{"preact":"^10.2.1","react":"^17.0.0"},"gitHead":"04e44a3695f8db307eda69f753e10665cfa70fa1","bugs":{"url":"https://github.com/ampproject/amphtml/issues"},"_id":"@bentoproject/date-display@1.2111060251.9","_nodeVersion":"16.13.0","_npmVersion":"8.1.0","dist":{"integrity":"sha512-LSkLNHJHvfk3rGioNJbCvNrezSdZINMLNBe0JFt2B5x/DKjhzWhaSyDlMIt7A+MYfA8GCSlmbdZCR/Vwe2MLKg==","shasum":"dbec0391ca6d57e5832abcc6609911dced5eae3b","tarball":"https://registry.npmjs.org/@bentoproject/date-display/-/date-display-1.2111060251.9.tgz","fileCount":27,"unpackedSize":1892820,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhl9FBCRA9TVsSAnZWagAAA80P/1eP4jI70jvyUAFCmvwz\nyalnXP7Lx45F/Ri0Yjnu7UYrgj9Nz56PS81d0araLlji9KntmyVMOFpaK5EE\nRAcWAhBSRqYt5HNQXku6beP2GOhVoyvxlPFo+Uy75hdREK1vDsi9WNy1Ui2c\n7rvmYi0Da7EXrn6FmKUcLwPN+/FTu9Ds4nEyD/5kd9uzZHAHBHkD/uzVC8E3\ntRSttAx4ZBal+iY0ts7dyRYxj28lOXHGkk9JpVSGH6T1RpoC5/GnXodgofRS\n5BkyVrqurYlDTBljAbUnTvBMWuLB7+FmhSzRn+eIdBrSd7rxcIIjJRUzkR4I\nA9CW4uuYXgXW8C3p87zeruPuDgmx32199M3EvWcv2Tq3HI5gXzspOzM7VbLb\nEcGFTzhkBw5WxEQ4Eqr5k4ruleUWGixGvblLES/wVkWcHfb7Cl3t7c4aHdAI\nLU0rJ0t4AybAFCljbcfoeHGCTRRMMXrJe33hmdQMZ3SBwvbyyDK5HmFgOK8O\nd1h+Tyb6ZDhjhUofxdKc2yd0lJAajMj2b6hZoRa9zjbC8Wc0yPQPiADc0Fmq\nxq97BfBWOJRt9D5TzKB4b3XEgkvzDSq8oTKv+14Z+iOi2auv4DBW3lOBhE9m\n2UhzLC0gKuwr5LN7C4cE/WDco8O6uHOKdxcYjPadZ/21ljLgPPDg7+//c6u/\nqTMk\r\n=9H1Y\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDzXMinfWkjnT3VcdC90sW7tm3yzHufnJEcRi5Ci+GtWgIgXU0pCyzBtU6GSADjYSFKerodENCC2WYQ9L9Pyh5SNFE="}]},"_npmUser":{"name":"bentoprojectbot","email":"bentobot@amp.dev"},"directories":{},"maintainers":[{"name":"bentoprojectbot","email":"bentobot@amp.dev"},{"name":"kristoferbaxter","email":"kbax@me.com"},{"name":"esth","email":"esther@amp.dev"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/date-display_1.2111060251.9_1637339456876_0.805685717549796"},"_hasShrinkwrap":false},"1.2111191951.0":{"name":"@bentoproject/date-display","version":"1.2111191951.0","description":"Displays time data that you can render in your page.","author":{"name":"Bento Authors"},"license":"Apache-2.0","main":"./dist/web-component.js","module":"./dist/web-component.module.js","exports":{".":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./web-component":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./preact":{"import":"./dist/component-preact.module.js","require":"./dist/component-preact.js"},"./react":{"import":"./dist/component-react.module.js","require":"./dist/component-react.js"}},"repository":{"type":"git","url":"git+https://github.com/ampproject/amphtml.git","directory":"extensions/amp-date-display/1.0"},"homepage":"https://github.com/ampproject/amphtml/tree/main/extensions/amp-date-display/1.0","peerDependencies":{"preact":"^10.2.1","react":"^17.0.0"},"readme":"# Bento Date Display\n\nDisplays time data that you can render in your page. By providing specific [attributes](#attributes) in the Bento Date Display tag, the Bento Date Display extension returns a list of time parameters, which you can pass to [an amp-mustache template](../../amp-mustache/amp-mustache.md) for rendering. Refer to the [list below for each returned time parameter](#returned-time-parameters).\n\n## Web Component\n\nWe don't support the web component version of `bento-date-display` since `<template>` support is still being designed. This effort can be tracked in this [issue](https://go.amp.dev/issue/36619).\n\n<!--\nAn older version of this file contains the removed section, though it's incorrect:\n\nhttps://github.com/ampproject/amphtml/blob/422d171e87571c4d125a2bf956e78e92444c10e8/extensions/amp-date-display/1.0/README.md\n-->\n\n---\n\n## Preact/React Component\n\n### Import via npm\n\n```sh\nnpm install @bentoproject/date-display\n```\n\n```javascript\nimport React from 'react';\nimport {BentoDateDisplay} from '@bentoproject/date-display/react';\nimport '@bentoproject/date-display/styles.css';\n\nfunction App() {\n  return (\n    <BentoDateDisplay\n      datetime={dateTime}\n      displayIn={displayIn}\n      locale={locale}\n      render={(date) => (\n        <div>{`ISO: ${date.iso}; locale: ${date.localeString}`}</div>\n      )}\n    />\n  );\n}\n```\n\n### Interactivity and API usage\n\nThe Bento Date Display component does not have an imperative API. However, the Bento Date Display Preact/React component does accept a `render` prop that renders the consumer's template. This `render` prop should be a function which the Bento Date Display Preact/React component can use to render its template. The `render` callback will be provided a variety of date-related parameters for consumers to interpolate in the rendered template. See the [`render` prop section](#render) for more information.\n\n### Layout and style\n\nThe Bento Date Display Preact/React component allows consumers to render their own templates. These templates may use inline styles, `<style>` tags, Preact/React components that import their own stylesheets.\n\n### Props\n\n#### `datetime`\n\nRequired prop. Denotes the date and time as a Date, String, or Nuumber. If String, must be a standard ISO 8601 date string (e.g. 2017-08-02T15:05:05.000Z) or the string `now`. If set to `now`, it will use the time the page loaded to render its template. If Number, must be a POSIX epoch value in milliseconds.\n\n#### `displayIn`\n\nOptional prop that can be either `\"utc\"` or `\"local\"` and defaults to `\"local\"`. This prop indicates what timezone to display the date in. If set to the value `\"utc\"`, the component will convert the given date to UTC.\n\n#### `locale`\n\nAn internationalization language string for each timer unit. The default value is `en` (for English). This prop supports all values that are supported by the user's browser.\n\n#### `localeOptions`\n\nThe `localeOptions` object supports all the options under [Intl.DateTimeFormat.options](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/DateTimeFormat#parameters) parameter that specifies the formatting style to use for `localeString` format.\n\nNote that if the `displayIn` prop is set to `utc`, the value of `localeOptions.timeZone` will automatically be converted to `UTC`.\n\n#### `render`\n\nOptional callback that should render a template. The callback will be provided an object with properties/values related to the date expressed in `datetime`.\n\nBy default, the Bento Date Display component will display the [`localeString` form of the Date](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/toLocaleString) for the given locale and localeOption. See the [Returned Time Parameters section](#returned-time-parameters) for more details on how each property will be displayed.\n\n```typescript\n(dateParams: DateParams) => JSXInternal.Element\ninterface DateParams {\n  day: number;\n  dayName: string;\n  dayNameShort: string;\n  dayPeriod: string;\n  dayTwoDigit: string;\n  hour: number;\n  hour12: number;\n  hour12TwoDigit: string;\n  hourTwoDigit: string;\n  iso: string;\n  localeString: string;\n  minute: number;\n  minuteTwoDigit: string;\n  month: number;\n  monthName: string;\n  monthNameShort: string;\n  monthTwoDigit: string;\n  second: number;\n  secondTwoDigit: string;\n  timeZoneName: string;\n  timeZoneNameShort: string;\n  year: number;\n  yearTwoDi: string;\n}\n```\n\n### Returned Time Parameters\n\nThis table lists the format you can specify in your Mustache template:\n\n| Format            | Meaning                                                       |\n| ----------------- | ------------------------------------------------------------- |\n| day               | 1, 2, ...12, 13, etc.                                         |\n| dayName           | string,                                                       |\n| dayNameShort      | string,                                                       |\n| dayPeriod         | string,                                                       |\n| dayTwoDigit       | 01, 02, 03, ..., 12, 13, etc.                                 |\n| hour              | 0, 1, 2, 3, ..., 12, 13, ..., 22, 23                          |\n| hour12            | 1, 2, 3, ..., 12, 1, 2, ..., 11, 12                           |\n| hour12TwoDigit    | 01, 02, ..., 12, 01, 02, ..., 11, 12                          |\n| hourTwoDigit      | 00, 01, 02, ..., 12, 13, ..., 22, 23                          |\n| iso               | A standard ISO8601 date string e.g. 2019-01-23T15:31:21.213Z, |\n| localeString      | A string with a language sensitive representation.            |\n| minute            | 0, 1, 2, ..., 58, 59                                          |\n| minuteTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| month             | 1, 2, 3, ..., 12                                              |\n| monthName         | Internationalized month name string.                          |\n| monthNameShort    | Internationalized abbreviated month name string.,             |\n| monthTwoDigit     | 01, 02, ..., 11, 12                                           |\n| second            | 0, 1, 2, ..., 58, 59                                          |\n| secondTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| timeZoneName      | Internationalized timezone, like `Pacific Daylight Time`      |\n| timeZoneNameShort | Internationalized timezone, abbreviated, like `PST`           |\n| year              | 0, 1, 2, ..., 1999, 2000, 2001, etc.                          |\n| yearTwoDigit      | 00, 01, 02, ..., 17, 18, 19, ..., 98, 99                      |\n","readmeFilename":"README.md","gitHead":"22d6da19b9e01e75e6b67f54cd425c465822fe8c","bugs":{"url":"https://github.com/ampproject/amphtml/issues"},"_id":"@bentoproject/date-display@1.2111191951.0","_nodeVersion":"16.13.0","_npmVersion":"8.1.0","dist":{"integrity":"sha512-dORQadEssTtwZzoZ6g0Q37T83slx5L3kr0P8FB9lvA+S5JDEZJwLkor09m29xoPRI6Iam3OdFqgVyFTD22VnRA==","shasum":"615fb02325b37ac75fee10b8d762a9e9e117fc3b","tarball":"https://registry.npmjs.org/@bentoproject/date-display/-/date-display-1.2111191951.0.tgz","fileCount":27,"unpackedSize":1892820,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhmOiwCRA9TVsSAnZWagAA8OQQAJILj/zDIz9392G2+Gie\nicXiOZtSpJQmKq3kKcX7XokqXw+5mKCdTGwURxqKrlWh8DLw3E1hbBGBENKS\nh8QNe8yfdxxWP1IZkAIq9oiXPgK4c70LUHuXaRmXq9p5iAb1QGnDxqqzAqzO\ne0BXWaZhiqqN/F2kEHRYtZfQ9MR/2dADyNA/C4blNOPg5GgvxSQvp3U3NiLT\nZYlKRnyLDDigviP/aF+V9uv2dIa9/gfFEI7X4NyvayDKGoZG0lvrV/FFOjbt\nehdqjH9vCwZxA/ap0dQCRCCDTEG5RarBdHdLLdg8wADmC5ZP5HyXU15vA3vk\nBdVzYTZAVx3lqZ+pBxv9oiPSbkop8JDmU6COJWGU7J6N5yBTDXkfw5R3B0+D\n7iarmLhavrutrxF8BPZfWs6ELvLz3xUYlhpfL32r0kjjjifjG9rVVCUhZJLN\nOz7sinEh7KUOHlyiTZQhmehmDE31RkU8KwKPOGMMTzgJxXYw5FY74SsVZgN+\nOYn3I0O9mj9ueqwNhxDRmf4cCqxHqD3RxxGcsz7+MXIJz07VvmBwrkW8AThp\nxThy5xqMzbVQlQSlup9xWKmiDmQDKL8ptnV+OtntxXdrA07p8o/9jXyVU5ba\niZhlB+4dWxi1sTX02JckYZUu3XmkpZX68Z34dv18SsOAXdRgVYvViCED+5We\nZ6Ld\r\n=wKAL\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCGoyJGQqt+Db66gRrg/xXnBPGBXruybGMXPCehq1QJdgIhAKkvKSnRXkL9PuaUY/mcx8hCk8gDV1rw9nEZ8p9tWJbz"}]},"_npmUser":{"name":"bentoprojectbot","email":"bentobot@amp.dev"},"directories":{},"maintainers":[{"name":"bentoprojectbot","email":"bentobot@amp.dev"},{"name":"kristoferbaxter","email":"kbax@me.com"},{"name":"esth","email":"esther@amp.dev"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/date-display_1.2111191951.0_1637410992379_0.7611040450260538"},"_hasShrinkwrap":false},"1.2111230244.0":{"name":"@bentoproject/date-display","version":"1.2111230244.0","description":"Displays time data that you can render in your page.","author":{"name":"Bento Authors"},"license":"Apache-2.0","main":"./dist/web-component.js","module":"./dist/web-component.module.js","exports":{".":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./web-component":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./preact":{"import":"./dist/component-preact.module.js","require":"./dist/component-preact.js"},"./react":{"import":"./dist/component-react.module.js","require":"./dist/component-react.js"}},"repository":{"type":"git","url":"git+https://github.com/ampproject/amphtml.git","directory":"extensions/amp-date-display/1.0"},"homepage":"https://github.com/ampproject/amphtml/tree/main/extensions/amp-date-display/1.0","peerDependencies":{"preact":"^10.2.1","react":"^17.0.0"},"readme":"# Bento Date Display\n\nDisplays time data that you can render in your page. By providing specific [attributes](#attributes) in the Bento Date Display tag, the Bento Date Display extension returns a list of time parameters, which you can pass to [an amp-mustache template](../../amp-mustache/amp-mustache.md) for rendering. Refer to the [list below for each returned time parameter](#returned-time-parameters).\n\n## Web Component\n\nWe don't support the web component version of `bento-date-display` since `<template>` support is still being designed. This effort can be tracked in this [issue](https://go.amp.dev/issue/36619).\n\n<!--\nAn older version of this file contains the removed section, though it's incorrect:\n\nhttps://github.com/ampproject/amphtml/blob/422d171e87571c4d125a2bf956e78e92444c10e8/extensions/amp-date-display/1.0/README.md\n-->\n\n---\n\n## Preact/React Component\n\n### Import via npm\n\n```sh\nnpm install @bentoproject/date-display\n```\n\n```javascript\nimport React from 'react';\nimport {BentoDateDisplay} from '@bentoproject/date-display/react';\nimport '@bentoproject/date-display/styles.css';\n\nfunction App() {\n  return (\n    <BentoDateDisplay\n      datetime={dateTime}\n      displayIn={displayIn}\n      locale={locale}\n      render={(date) => (\n        <div>{`ISO: ${date.iso}; locale: ${date.localeString}`}</div>\n      )}\n    />\n  );\n}\n```\n\n### Interactivity and API usage\n\nThe Bento Date Display component does not have an imperative API. However, the Bento Date Display Preact/React component does accept a `render` prop that renders the consumer's template. This `render` prop should be a function which the Bento Date Display Preact/React component can use to render its template. The `render` callback will be provided a variety of date-related parameters for consumers to interpolate in the rendered template. See the [`render` prop section](#render) for more information.\n\n### Layout and style\n\nThe Bento Date Display Preact/React component allows consumers to render their own templates. These templates may use inline styles, `<style>` tags, Preact/React components that import their own stylesheets.\n\n### Props\n\n#### `datetime`\n\nRequired prop. Denotes the date and time as a Date, String, or Nuumber. If String, must be a standard ISO 8601 date string (e.g. 2017-08-02T15:05:05.000Z) or the string `now`. If set to `now`, it will use the time the page loaded to render its template. If Number, must be a POSIX epoch value in milliseconds.\n\n#### `displayIn`\n\nOptional prop that can be either `\"utc\"` or `\"local\"` and defaults to `\"local\"`. This prop indicates what timezone to display the date in. If set to the value `\"utc\"`, the component will convert the given date to UTC.\n\n#### `locale`\n\nAn internationalization language string for each timer unit. The default value is `en` (for English). This prop supports all values that are supported by the user's browser.\n\n#### `localeOptions`\n\nThe `localeOptions` object supports all the options under [Intl.DateTimeFormat.options](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/DateTimeFormat#parameters) parameter that specifies the formatting style to use for `localeString` format.\n\nNote that if the `displayIn` prop is set to `utc`, the value of `localeOptions.timeZone` will automatically be converted to `UTC`.\n\n#### `render`\n\nOptional callback that should render a template. The callback will be provided an object with properties/values related to the date expressed in `datetime`.\n\nBy default, the Bento Date Display component will display the [`localeString` form of the Date](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/toLocaleString) for the given locale and localeOption. See the [Returned Time Parameters section](#returned-time-parameters) for more details on how each property will be displayed.\n\n```typescript\n(dateParams: DateParams) => JSXInternal.Element\ninterface DateParams {\n  day: number;\n  dayName: string;\n  dayNameShort: string;\n  dayPeriod: string;\n  dayTwoDigit: string;\n  hour: number;\n  hour12: number;\n  hour12TwoDigit: string;\n  hourTwoDigit: string;\n  iso: string;\n  localeString: string;\n  minute: number;\n  minuteTwoDigit: string;\n  month: number;\n  monthName: string;\n  monthNameShort: string;\n  monthTwoDigit: string;\n  second: number;\n  secondTwoDigit: string;\n  timeZoneName: string;\n  timeZoneNameShort: string;\n  year: number;\n  yearTwoDi: string;\n}\n```\n\n### Returned Time Parameters\n\nThis table lists the format you can specify in your Mustache template:\n\n| Format            | Meaning                                                       |\n| ----------------- | ------------------------------------------------------------- |\n| day               | 1, 2, ...12, 13, etc.                                         |\n| dayName           | string,                                                       |\n| dayNameShort      | string,                                                       |\n| dayPeriod         | string,                                                       |\n| dayTwoDigit       | 01, 02, 03, ..., 12, 13, etc.                                 |\n| hour              | 0, 1, 2, 3, ..., 12, 13, ..., 22, 23                          |\n| hour12            | 1, 2, 3, ..., 12, 1, 2, ..., 11, 12                           |\n| hour12TwoDigit    | 01, 02, ..., 12, 01, 02, ..., 11, 12                          |\n| hourTwoDigit      | 00, 01, 02, ..., 12, 13, ..., 22, 23                          |\n| iso               | A standard ISO8601 date string e.g. 2019-01-23T15:31:21.213Z, |\n| localeString      | A string with a language sensitive representation.            |\n| minute            | 0, 1, 2, ..., 58, 59                                          |\n| minuteTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| month             | 1, 2, 3, ..., 12                                              |\n| monthName         | Internationalized month name string.                          |\n| monthNameShort    | Internationalized abbreviated month name string.,             |\n| monthTwoDigit     | 01, 02, ..., 11, 12                                           |\n| second            | 0, 1, 2, ..., 58, 59                                          |\n| secondTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| timeZoneName      | Internationalized timezone, like `Pacific Daylight Time`      |\n| timeZoneNameShort | Internationalized timezone, abbreviated, like `PST`           |\n| year              | 0, 1, 2, ..., 1999, 2000, 2001, etc.                          |\n| yearTwoDigit      | 00, 01, 02, ..., 17, 18, 19, ..., 98, 99                      |\n","readmeFilename":"README.md","gitHead":"d906c0bae3e05aebd88696b9659414f63c1ca45a","bugs":{"url":"https://github.com/ampproject/amphtml/issues"},"_id":"@bentoproject/date-display@1.2111230244.0","_nodeVersion":"16.13.0","_npmVersion":"8.1.0","dist":{"integrity":"sha512-78a2Ag2etERYMb76cmX1sJXG71SKCEspZ5U+Bf4UxNNU+9A+UZhOwUfmfd0sq13DkW8dTCVJ7zmGuF6g0caURA==","shasum":"5dfdf9e1187dd1bcdecef006b5818e72fa9bbd6a","tarball":"https://registry.npmjs.org/@bentoproject/date-display/-/date-display-1.2111230244.0.tgz","fileCount":27,"unpackedSize":1892820,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhnN14CRA9TVsSAnZWagAAZPcP/1BOZYpsyuAZ2xWF6w2w\nRaGD9ARlZnM2UuuTA+C3mJgy1VOQouNCR4ycrHgYdNDkUpznU+tL2dSh4b6u\n2IxruIuUaXWSNppWnWfgxZZ6T+CkkaairD70wsth0/yLes3todAO73YWLKdA\nGdjkEoncsbW1s2B3vJGzY8y82WwjymOq/WD9rl10+XfqNfSaSJP3q81W5clA\n+Os0qCDs0UhXx+K5x3KwEVzhQrUzgT6xcTsaIPZ50EzBUSu1pC0nj4dsBt8D\n0Sii8EokN8KJn4D0zyGuGp0xTnNTWlWwyV+opIuVxqWxVactGgbUTXI/VgcS\n1SSmYl5/BTnHdBwZXxYgS1xYzSfVAfTqTrOsPABHxtbUzooSL6Wu7hQOlhhz\nBDr0ux2QchXxPjx/sk6q18C5oixfx1yt7AUCjDs9LqWg4EdVWdnqPG8m13SR\nLnvowTweWKLCJURnob88Tzf0xrjgLDl4/0/s7ofctVFQYjC/UWtijAo2woe+\nonC90wRwP5jI4wuHjr5UQuO9Gi2D7yN9FDENyQAd67099/FLXWcinDPI0Hkc\nKTzCki23ygHUBLIrwh4AIMPmzKdi8eM3/fcr+DIJhgbwElpDC0Hz54ba37qv\nYUr34e+rHgVAW6oiGshcrzvVXohfUzwy00AI6HlXffAuHm7yLRwFZq3PE8F9\njvYk\r\n=8+Rq\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCXq3UCtlJq9hxXnE85xJcF1slhMT9bLGj5bzUg3Qyh3AIgWQZ3XoNYq8T7gCe+YAZqsDkbIl45Q0S2E5l1MBrWtAU="}]},"_npmUser":{"name":"bentoprojectbot","email":"bentobot@amp.dev"},"directories":{},"maintainers":[{"name":"bentoprojectbot","email":"bentobot@amp.dev"},{"name":"kristoferbaxter","email":"kbax@me.com"},{"name":"esth","email":"esther@amp.dev"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/date-display_1.2111230244.0_1637670263940_0.26450413611208523"},"_hasShrinkwrap":false},"1.2111230636.0":{"name":"@bentoproject/date-display","version":"1.2111230636.0","description":"Displays time data that you can render in your page.","author":{"name":"Bento Authors"},"license":"Apache-2.0","main":"./dist/web-component.js","module":"./dist/web-component.module.js","exports":{".":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./web-component":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./preact":{"import":"./dist/component-preact.module.js","require":"./dist/component-preact.js"},"./react":{"import":"./dist/component-react.module.js","require":"./dist/component-react.js"}},"repository":{"type":"git","url":"git+https://github.com/ampproject/amphtml.git","directory":"extensions/amp-date-display/1.0"},"homepage":"https://github.com/ampproject/amphtml/tree/main/extensions/amp-date-display/1.0","peerDependencies":{"preact":"^10.2.1","react":"^17.0.0"},"readme":"# Bento Date Display\n\nDisplays time data that you can render in your page. By providing specific [attributes](#attributes) in the Bento Date Display tag, the Bento Date Display extension returns a list of time parameters, which you can pass to [an amp-mustache template](../../amp-mustache/amp-mustache.md) for rendering. Refer to the [list below for each returned time parameter](#returned-time-parameters).\n\n## Web Component\n\nWe don't support the web component version of `bento-date-display` since `<template>` support is still being designed. This effort can be tracked in this [issue](https://go.amp.dev/issue/36619).\n\n<!--\nAn older version of this file contains the removed section, though it's incorrect:\n\nhttps://github.com/ampproject/amphtml/blob/422d171e87571c4d125a2bf956e78e92444c10e8/extensions/amp-date-display/1.0/README.md\n-->\n\n---\n\n## Preact/React Component\n\n### Import via npm\n\n```sh\nnpm install @bentoproject/date-display\n```\n\n```javascript\nimport React from 'react';\nimport {BentoDateDisplay} from '@bentoproject/date-display/react';\nimport '@bentoproject/date-display/styles.css';\n\nfunction App() {\n  return (\n    <BentoDateDisplay\n      datetime={dateTime}\n      displayIn={displayIn}\n      locale={locale}\n      render={(date) => (\n        <div>{`ISO: ${date.iso}; locale: ${date.localeString}`}</div>\n      )}\n    />\n  );\n}\n```\n\n### Interactivity and API usage\n\nThe Bento Date Display component does not have an imperative API. However, the Bento Date Display Preact/React component does accept a `render` prop that renders the consumer's template. This `render` prop should be a function which the Bento Date Display Preact/React component can use to render its template. The `render` callback will be provided a variety of date-related parameters for consumers to interpolate in the rendered template. See the [`render` prop section](#render) for more information.\n\n### Layout and style\n\nThe Bento Date Display Preact/React component allows consumers to render their own templates. These templates may use inline styles, `<style>` tags, Preact/React components that import their own stylesheets.\n\n### Props\n\n#### `datetime`\n\nRequired prop. Denotes the date and time as a Date, String, or Nuumber. If String, must be a standard ISO 8601 date string (e.g. 2017-08-02T15:05:05.000Z) or the string `now`. If set to `now`, it will use the time the page loaded to render its template. If Number, must be a POSIX epoch value in milliseconds.\n\n#### `displayIn`\n\nOptional prop that can be either `\"utc\"` or `\"local\"` and defaults to `\"local\"`. This prop indicates what timezone to display the date in. If set to the value `\"utc\"`, the component will convert the given date to UTC.\n\n#### `locale`\n\nAn internationalization language string for each timer unit. The default value is `en` (for English). This prop supports all values that are supported by the user's browser.\n\n#### `localeOptions`\n\nThe `localeOptions` object supports all the options under [Intl.DateTimeFormat.options](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/DateTimeFormat#parameters) parameter that specifies the formatting style to use for `localeString` format.\n\nNote that if the `displayIn` prop is set to `utc`, the value of `localeOptions.timeZone` will automatically be converted to `UTC`.\n\n#### `render`\n\nOptional callback that should render a template. The callback will be provided an object with properties/values related to the date expressed in `datetime`.\n\nBy default, the Bento Date Display component will display the [`localeString` form of the Date](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/toLocaleString) for the given locale and localeOption. See the [Returned Time Parameters section](#returned-time-parameters) for more details on how each property will be displayed.\n\n```typescript\n(dateParams: DateParams) => JSXInternal.Element\ninterface DateParams {\n  day: number;\n  dayName: string;\n  dayNameShort: string;\n  dayPeriod: string;\n  dayTwoDigit: string;\n  hour: number;\n  hour12: number;\n  hour12TwoDigit: string;\n  hourTwoDigit: string;\n  iso: string;\n  localeString: string;\n  minute: number;\n  minuteTwoDigit: string;\n  month: number;\n  monthName: string;\n  monthNameShort: string;\n  monthTwoDigit: string;\n  second: number;\n  secondTwoDigit: string;\n  timeZoneName: string;\n  timeZoneNameShort: string;\n  year: number;\n  yearTwoDi: string;\n}\n```\n\n### Returned Time Parameters\n\nThis table lists the format you can specify in your Mustache template:\n\n| Format            | Meaning                                                       |\n| ----------------- | ------------------------------------------------------------- |\n| day               | 1, 2, ...12, 13, etc.                                         |\n| dayName           | string,                                                       |\n| dayNameShort      | string,                                                       |\n| dayPeriod         | string,                                                       |\n| dayTwoDigit       | 01, 02, 03, ..., 12, 13, etc.                                 |\n| hour              | 0, 1, 2, 3, ..., 12, 13, ..., 22, 23                          |\n| hour12            | 1, 2, 3, ..., 12, 1, 2, ..., 11, 12                           |\n| hour12TwoDigit    | 01, 02, ..., 12, 01, 02, ..., 11, 12                          |\n| hourTwoDigit      | 00, 01, 02, ..., 12, 13, ..., 22, 23                          |\n| iso               | A standard ISO8601 date string e.g. 2019-01-23T15:31:21.213Z, |\n| localeString      | A string with a language sensitive representation.            |\n| minute            | 0, 1, 2, ..., 58, 59                                          |\n| minuteTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| month             | 1, 2, 3, ..., 12                                              |\n| monthName         | Internationalized month name string.                          |\n| monthNameShort    | Internationalized abbreviated month name string.,             |\n| monthTwoDigit     | 01, 02, ..., 11, 12                                           |\n| second            | 0, 1, 2, ..., 58, 59                                          |\n| secondTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| timeZoneName      | Internationalized timezone, like `Pacific Daylight Time`      |\n| timeZoneNameShort | Internationalized timezone, abbreviated, like `PST`           |\n| year              | 0, 1, 2, ..., 1999, 2000, 2001, etc.                          |\n| yearTwoDigit      | 00, 01, 02, ..., 17, 18, 19, ..., 98, 99                      |\n","readmeFilename":"README.md","gitHead":"46e8f482bf5e3008ef07e950034d194c48317990","bugs":{"url":"https://github.com/ampproject/amphtml/issues"},"_id":"@bentoproject/date-display@1.2111230636.0","_nodeVersion":"16.13.0","_npmVersion":"8.1.0","dist":{"integrity":"sha512-sxeyZ15v/rNDzU4a+ItdnvoCW3/tYWRWWxbz7whU2nveMvIalrh3YU3kCx2p/h5C0K7hq1mQ5sWo/DRYwBJqBw==","shasum":"52ccca632499d0792fd4b28123e0b2d5f447d21e","tarball":"https://registry.npmjs.org/@bentoproject/date-display/-/date-display-1.2111230636.0.tgz","fileCount":27,"unpackedSize":1892820,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhni59CRA9TVsSAnZWagAAz8AP/0UusMX7XEeak5+DxVYE\nf6aK6NTGtLdlI14AeDHXmbCQ3qgVM2mpXU6dcSng4MF56v9gCPP/oBdN+lly\nYKiey31bCeDcBw5FEOqbAKVqanc1Cs7BcbCLJVkWmpxSxe1qATQQqnf4LXLv\nAJSwjTIpAajX0J2ga5lj2VriiJBVsm77jT4VJH6CzuwCiQJmiEGrg0awo7sE\nXuaPkUYbL0woBydVjP/ifZPzFm2xArYLWg2G+6Ok64tr3KH1o1RBMyCpE9L9\n+20mdwYMFd/BsE3OYLjzPudjRDhO47Jp7thNIJ1jxPI/9rl46zAzl7HmUUlk\nwPSMFusJOTHX4sbgJdI7NuXI1BLDNu2uIBdRMzSXzC0jPnXyZ8qwBLeX2tcT\nTgHkiW+ZKmQLJVcXkAntulBJj34J6chR6/qOuyQ1492sjsPsFNsU1RAHl6Kg\niOVtEgoZQlxP+OvexI6b1ZDEE19AjfFiJ8OwD6lPj+OHiguWFDcMDaZGJVet\n/FMV7o/OE8c/9nngdIkvV+y3lPu/U+C0hmRQY2wpRjV/EfrN75/JvOEplOWP\ndQBF0Zs7e+x7XvD9DQNR1H+TNITMzWcl9WSIbrJHurAi6W6BQRI8kURcYwQQ\nsH5EcYCkSd3HJb9yPPY/0ENfRbGlRaexE3PWe9fGdjLaSpOYan3H+zeDt5CN\nlzX8\r\n=s1Gy\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDUxbspv4TULWhllsmCh4RTVoL/k5i8fqh6e1m10B1rGwIgJDDqQ7CI3lt8N78camf+VMCYRI51K5VXNU3cAVXEFNg="}]},"_npmUser":{"name":"bentoprojectbot","email":"bentobot@amp.dev"},"directories":{},"maintainers":[{"name":"bentoprojectbot","email":"bentobot@amp.dev"},{"name":"kristoferbaxter","email":"kbax@me.com"},{"name":"esth","email":"esther@amp.dev"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/date-display_1.2111230636.0_1637756541365_0.2735801491434371"},"_hasShrinkwrap":false},"1.2111242025.0":{"name":"@bentoproject/date-display","version":"1.2111242025.0","description":"Displays time data that you can render in your page.","author":{"name":"Bento Authors"},"license":"Apache-2.0","main":"./dist/web-component.js","module":"./dist/web-component.module.js","exports":{".":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./web-component":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./preact":{"import":"./dist/component-preact.module.js","require":"./dist/component-preact.js"},"./react":{"import":"./dist/component-react.module.js","require":"./dist/component-react.js"}},"repository":{"type":"git","url":"git+https://github.com/ampproject/amphtml.git","directory":"extensions/amp-date-display/1.0"},"homepage":"https://github.com/ampproject/amphtml/tree/main/extensions/amp-date-display/1.0","peerDependencies":{"preact":"^10.2.1","react":"^17.0.0"},"readme":"# Bento Date Display\n\nDisplays time data that you can render in your page. By providing specific [attributes](#attributes) in the Bento Date Display tag, the Bento Date Display extension returns a list of time parameters, which you can pass to [an amp-mustache template](../../amp-mustache/amp-mustache.md) for rendering. Refer to the [list below for each returned time parameter](#returned-time-parameters).\n\n## Web Component\n\nWe don't support the web component version of `bento-date-display` since `<template>` support is still being designed. This effort can be tracked in this [issue](https://go.amp.dev/issue/36619).\n\n<!--\nAn older version of this file contains the removed section, though it's incorrect:\n\nhttps://github.com/ampproject/amphtml/blob/422d171e87571c4d125a2bf956e78e92444c10e8/extensions/amp-date-display/1.0/README.md\n-->\n\n---\n\n## Preact/React Component\n\n### Import via npm\n\n```sh\nnpm install @bentoproject/date-display\n```\n\n```javascript\nimport React from 'react';\nimport {BentoDateDisplay} from '@bentoproject/date-display/react';\nimport '@bentoproject/date-display/styles.css';\n\nfunction App() {\n  return (\n    <BentoDateDisplay\n      datetime={dateTime}\n      displayIn={displayIn}\n      locale={locale}\n      render={(date) => (\n        <div>{`ISO: ${date.iso}; locale: ${date.localeString}`}</div>\n      )}\n    />\n  );\n}\n```\n\n### Interactivity and API usage\n\nThe Bento Date Display component does not have an imperative API. However, the Bento Date Display Preact/React component does accept a `render` prop that renders the consumer's template. This `render` prop should be a function which the Bento Date Display Preact/React component can use to render its template. The `render` callback will be provided a variety of date-related parameters for consumers to interpolate in the rendered template. See the [`render` prop section](#render) for more information.\n\n### Layout and style\n\nThe Bento Date Display Preact/React component allows consumers to render their own templates. These templates may use inline styles, `<style>` tags, Preact/React components that import their own stylesheets.\n\n### Props\n\n#### `datetime`\n\nRequired prop. Denotes the date and time as a Date, String, or Nuumber. If String, must be a standard ISO 8601 date string (e.g. 2017-08-02T15:05:05.000Z) or the string `now`. If set to `now`, it will use the time the page loaded to render its template. If Number, must be a POSIX epoch value in milliseconds.\n\n#### `displayIn`\n\nOptional prop that can be either `\"utc\"` or `\"local\"` and defaults to `\"local\"`. This prop indicates what timezone to display the date in. If set to the value `\"utc\"`, the component will convert the given date to UTC.\n\n#### `locale`\n\nAn internationalization language string for each timer unit. The default value is `en` (for English). This prop supports all values that are supported by the user's browser.\n\n#### `localeOptions`\n\nThe `localeOptions` object supports all the options under [Intl.DateTimeFormat.options](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/DateTimeFormat#parameters) parameter that specifies the formatting style to use for `localeString` format.\n\nNote that if the `displayIn` prop is set to `utc`, the value of `localeOptions.timeZone` will automatically be converted to `UTC`.\n\n#### `render`\n\nOptional callback that should render a template. The callback will be provided an object with properties/values related to the date expressed in `datetime`.\n\nBy default, the Bento Date Display component will display the [`localeString` form of the Date](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/toLocaleString) for the given locale and localeOption. See the [Returned Time Parameters section](#returned-time-parameters) for more details on how each property will be displayed.\n\n```typescript\n(dateParams: DateParams) => JSXInternal.Element\ninterface DateParams {\n  day: number;\n  dayName: string;\n  dayNameShort: string;\n  dayPeriod: string;\n  dayTwoDigit: string;\n  hour: number;\n  hour12: number;\n  hour12TwoDigit: string;\n  hourTwoDigit: string;\n  iso: string;\n  localeString: string;\n  minute: number;\n  minuteTwoDigit: string;\n  month: number;\n  monthName: string;\n  monthNameShort: string;\n  monthTwoDigit: string;\n  second: number;\n  secondTwoDigit: string;\n  timeZoneName: string;\n  timeZoneNameShort: string;\n  year: number;\n  yearTwoDi: string;\n}\n```\n\n### Returned Time Parameters\n\nThis table lists the format you can specify in your Mustache template:\n\n| Format            | Meaning                                                       |\n| ----------------- | ------------------------------------------------------------- |\n| day               | 1, 2, ...12, 13, etc.                                         |\n| dayName           | string,                                                       |\n| dayNameShort      | string,                                                       |\n| dayPeriod         | string,                                                       |\n| dayTwoDigit       | 01, 02, 03, ..., 12, 13, etc.                                 |\n| hour              | 0, 1, 2, 3, ..., 12, 13, ..., 22, 23                          |\n| hour12            | 1, 2, 3, ..., 12, 1, 2, ..., 11, 12                           |\n| hour12TwoDigit    | 01, 02, ..., 12, 01, 02, ..., 11, 12                          |\n| hourTwoDigit      | 00, 01, 02, ..., 12, 13, ..., 22, 23                          |\n| iso               | A standard ISO8601 date string e.g. 2019-01-23T15:31:21.213Z, |\n| localeString      | A string with a language sensitive representation.            |\n| minute            | 0, 1, 2, ..., 58, 59                                          |\n| minuteTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| month             | 1, 2, 3, ..., 12                                              |\n| monthName         | Internationalized month name string.                          |\n| monthNameShort    | Internationalized abbreviated month name string.,             |\n| monthTwoDigit     | 01, 02, ..., 11, 12                                           |\n| second            | 0, 1, 2, ..., 58, 59                                          |\n| secondTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| timeZoneName      | Internationalized timezone, like `Pacific Daylight Time`      |\n| timeZoneNameShort | Internationalized timezone, abbreviated, like `PST`           |\n| year              | 0, 1, 2, ..., 1999, 2000, 2001, etc.                          |\n| yearTwoDigit      | 00, 01, 02, ..., 17, 18, 19, ..., 98, 99                      |\n","readmeFilename":"README.md","gitHead":"b78e8781ff3976b3bff1ba881cf66dd2609b5c07","bugs":{"url":"https://github.com/ampproject/amphtml/issues"},"_id":"@bentoproject/date-display@1.2111242025.0","_nodeVersion":"16.13.0","_npmVersion":"8.1.0","dist":{"integrity":"sha512-nCFzVLP176GjMYKAjXqIJBReqKT2w8eD3OvR2udUb8eMRqift/JQQpQLOL4nZiMRZ1mEu//YsFJH/psC+q5YCA==","shasum":"aa4152c70291476157992503d7faad384349f43c","tarball":"https://registry.npmjs.org/@bentoproject/date-display/-/date-display-1.2111242025.0.tgz","fileCount":27,"unpackedSize":1892820,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhn4SUCRA9TVsSAnZWagAA+YMP/3Q0nhWUCTaa2dHeKG8t\nT3fHflELhjwPXDKijQpmUfCFmiEcwGK1/203rf6E18MZJntoxdJHPDyNMKRb\n7M4Fz9KUbi7JiplVLIFUorZ0Sq7nhjtW90EigW4xUlnyXEu+szu697NDssdV\nLm2yfSQlzmsbjXPy2s0Rmgm3345Fpf4+I4arDoHLfgqNBrW7oZ+kBPQVPKAs\ne06YHh6MltrN1DCxq1vO1a6bVk0e8AhH4JOUoxlhOzFx5SOPynZ7LNxxgu6q\n7q9XmtL1X8jma3qkKoiCWVsElc0HSLEqnBlM/CA+EL7DrNg2idRjZ1x73D1o\nD1Po/NkESZ7LzN6xpPdTyqZOxXXqfh6aE5PO57xRJYROVhswHhoQG+s0y3Un\nb4KzrHJfBlDHKxPCmFoS6rEVhoSkrLJnpPctIQpz8J6bHLe+fz9X9FUyX7Cl\nh8N5vywwMDId9V2r3s54wgPwdRAFXpaTYhmQJo/676rlEGC3pPI/A4RBysOM\nJ9apSqRxVnOKSt5fOBlKJ0hXmVw0y989Eyd4nr5MCYl3rvZyySOR3EeLuvlR\nPRvv2SuAsTaN17pvId4XOwMVFhKeoc7pfK+Em2uezxTBirgdM2Tj0B0QYee6\nx3vq0NM8lAkrYH28JyDK+m4/E/k4+kNU07oGO0Pe5v7dy3Kqnl7qRuY2k4W9\nibEw\r\n=rQ9N\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIHr8Z482eA0szzCWiM3bJ00Zkdb9aPCP99cnJbHK6WWGAiB/X4ske2ol1Xlp8X5CrNkK4lGp9uqHa/hHvG3ctQfXWA=="}]},"_npmUser":{"name":"bentoprojectbot","email":"bentobot@amp.dev"},"directories":{},"maintainers":[{"name":"bentoprojectbot","email":"bentobot@amp.dev"},{"name":"kristoferbaxter","email":"kbax@me.com"},{"name":"esth","email":"esther@amp.dev"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/date-display_1.2111242025.0_1637844116334_0.13754814370279433"},"_hasShrinkwrap":false},"1.2111292120.0":{"name":"@bentoproject/date-display","version":"1.2111292120.0","description":"Displays time data that you can render in your page.","author":{"name":"Bento Authors"},"license":"Apache-2.0","main":"./dist/web-component.js","module":"./dist/web-component.module.js","exports":{".":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./web-component":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./preact":{"import":"./dist/component-preact.module.js","require":"./dist/component-preact.js"},"./react":{"import":"./dist/component-react.module.js","require":"./dist/component-react.js"}},"repository":{"type":"git","url":"git+https://github.com/ampproject/amphtml.git","directory":"extensions/amp-date-display/1.0"},"homepage":"https://github.com/ampproject/amphtml/tree/main/extensions/amp-date-display/1.0","peerDependencies":{"preact":"^10.2.1","react":"^17.0.0"},"readme":"# Bento Date Display\n\nDisplays time data that you can render in your page. By providing specific [attributes](#attributes) in the Bento Date Display tag, the Bento Date Display extension returns a list of time parameters, which you can pass to [an amp-mustache template](../../amp-mustache/amp-mustache.md) for rendering. Refer to the [list below for each returned time parameter](#returned-time-parameters).\n\n## Web Component\n\nWe don't support the web component version of `bento-date-display` since `<template>` support is still being designed. This effort can be tracked in this [issue](https://go.amp.dev/issue/36619).\n\n<!--\nAn older version of this file contains the removed section, though it's incorrect:\n\nhttps://github.com/ampproject/amphtml/blob/422d171e87571c4d125a2bf956e78e92444c10e8/extensions/amp-date-display/1.0/README.md\n-->\n\n---\n\n## Preact/React Component\n\n### Import via npm\n\n```sh\nnpm install @bentoproject/date-display\n```\n\n```javascript\nimport React from 'react';\nimport {BentoDateDisplay} from '@bentoproject/date-display/react';\nimport '@bentoproject/date-display/styles.css';\n\nfunction App() {\n  return (\n    <BentoDateDisplay\n      datetime={dateTime}\n      displayIn={displayIn}\n      locale={locale}\n      render={(date) => (\n        <div>{`ISO: ${date.iso}; locale: ${date.localeString}`}</div>\n      )}\n    />\n  );\n}\n```\n\n### Interactivity and API usage\n\nThe Bento Date Display component does not have an imperative API. However, the Bento Date Display Preact/React component does accept a `render` prop that renders the consumer's template. This `render` prop should be a function which the Bento Date Display Preact/React component can use to render its template. The `render` callback will be provided a variety of date-related parameters for consumers to interpolate in the rendered template. See the [`render` prop section](#render) for more information.\n\n### Layout and style\n\nThe Bento Date Display Preact/React component allows consumers to render their own templates. These templates may use inline styles, `<style>` tags, Preact/React components that import their own stylesheets.\n\n### Props\n\n#### `datetime`\n\nRequired prop. Denotes the date and time as a Date, String, or Nuumber. If String, must be a standard ISO 8601 date string (e.g. 2017-08-02T15:05:05.000Z) or the string `now`. If set to `now`, it will use the time the page loaded to render its template. If Number, must be a POSIX epoch value in milliseconds.\n\n#### `displayIn`\n\nOptional prop that can be either `\"utc\"` or `\"local\"` and defaults to `\"local\"`. This prop indicates what timezone to display the date in. If set to the value `\"utc\"`, the component will convert the given date to UTC.\n\n#### `locale`\n\nAn internationalization language string for each timer unit. The default value is `en` (for English). This prop supports all values that are supported by the user's browser.\n\n#### `localeOptions`\n\nThe `localeOptions` object supports all the options under [Intl.DateTimeFormat.options](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/DateTimeFormat#parameters) parameter that specifies the formatting style to use for `localeString` format.\n\nNote that if the `displayIn` prop is set to `utc`, the value of `localeOptions.timeZone` will automatically be converted to `UTC`.\n\n#### `render`\n\nOptional callback that should render a template. The callback will be provided an object with properties/values related to the date expressed in `datetime`.\n\nBy default, the Bento Date Display component will display the [`localeString` form of the Date](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/toLocaleString) for the given locale and localeOption. See the [Returned Time Parameters section](#returned-time-parameters) for more details on how each property will be displayed.\n\n```typescript\n(dateParams: DateParams) => JSXInternal.Element\ninterface DateParams {\n  day: number;\n  dayName: string;\n  dayNameShort: string;\n  dayPeriod: string;\n  dayTwoDigit: string;\n  hour: number;\n  hour12: number;\n  hour12TwoDigit: string;\n  hourTwoDigit: string;\n  iso: string;\n  localeString: string;\n  minute: number;\n  minuteTwoDigit: string;\n  month: number;\n  monthName: string;\n  monthNameShort: string;\n  monthTwoDigit: string;\n  second: number;\n  secondTwoDigit: string;\n  timeZoneName: string;\n  timeZoneNameShort: string;\n  year: number;\n  yearTwoDi: string;\n}\n```\n\n### Returned Time Parameters\n\nThis table lists the format you can specify in your Mustache template:\n\n| Format            | Meaning                                                       |\n| ----------------- | ------------------------------------------------------------- |\n| day               | 1, 2, ...12, 13, etc.                                         |\n| dayName           | string,                                                       |\n| dayNameShort      | string,                                                       |\n| dayPeriod         | string,                                                       |\n| dayTwoDigit       | 01, 02, 03, ..., 12, 13, etc.                                 |\n| hour              | 0, 1, 2, 3, ..., 12, 13, ..., 22, 23                          |\n| hour12            | 1, 2, 3, ..., 12, 1, 2, ..., 11, 12                           |\n| hour12TwoDigit    | 01, 02, ..., 12, 01, 02, ..., 11, 12                          |\n| hourTwoDigit      | 00, 01, 02, ..., 12, 13, ..., 22, 23                          |\n| iso               | A standard ISO8601 date string e.g. 2019-01-23T15:31:21.213Z, |\n| localeString      | A string with a language sensitive representation.            |\n| minute            | 0, 1, 2, ..., 58, 59                                          |\n| minuteTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| month             | 1, 2, 3, ..., 12                                              |\n| monthName         | Internationalized month name string.                          |\n| monthNameShort    | Internationalized abbreviated month name string.,             |\n| monthTwoDigit     | 01, 02, ..., 11, 12                                           |\n| second            | 0, 1, 2, ..., 58, 59                                          |\n| secondTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| timeZoneName      | Internationalized timezone, like `Pacific Daylight Time`      |\n| timeZoneNameShort | Internationalized timezone, abbreviated, like `PST`           |\n| year              | 0, 1, 2, ..., 1999, 2000, 2001, etc.                          |\n| yearTwoDigit      | 00, 01, 02, ..., 17, 18, 19, ..., 98, 99                      |\n","readmeFilename":"README.md","gitHead":"e938f7c9446e2d1eb0f0f865c0f1ff42a4be76c5","bugs":{"url":"https://github.com/ampproject/amphtml/issues"},"_id":"@bentoproject/date-display@1.2111292120.0","_nodeVersion":"16.13.0","_npmVersion":"8.1.0","dist":{"integrity":"sha512-YtrmuuQSCDwBlyyS57Hf8XBHapRDNLi6K0+ojluIIhhi81zO8/KbBI63Z7YINbQ4DdxCxo7WCUh9Z2mCKit26w==","shasum":"783634744ea78b30567220bc5289b9d07598dd55","tarball":"https://registry.npmjs.org/@bentoproject/date-display/-/date-display-1.2111292120.0.tgz","fileCount":27,"unpackedSize":1892820,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhphvOCRA9TVsSAnZWagAAACoP/Ah5BitR8kkBlBNGrWks\nocei+PREQ06upcph9b8T1S62tk07QyteSiCxLMqDunzlP8FyrZ2x/SMpMpCS\n/1sAOuSdCVihkNI3QNklmw71DbJksqSw2V2cJL+fUEzvdGClOmIOQe01cs5/\nEf1uTOCuVK2PGqLjKhmoOUmxlMfSTFJQPrCmkhKQbjzhEXJkASSmB0ibqGXi\nI8TeydhI2yuM7I+rEZ0rX5uNTOETS8fOT6Y9ZI4mGLfL6J2cZngtLbh2BHFn\nzzJFalvtgv6yqNYhxhHtWJFUSW60HY3XOvUNg/uQgxgKkpeSXN37xYhYAZhz\nlwV4wKAziV7udFXBgHPeCur51mBaHNNFZNqAoSmWGVTBJPaxBUUlX/QmlBWH\n8JVUMuScy+xZ1BEEI1Ps9yCNFeHgJeAgJAuNfSn/2ffif1TfscgOEOazkvVA\neE66YZarxBUOsxHc8Ysxa4U7+PzPFlGB+nu49pQca5CJx7uZ1QScdrtNpAic\nYxuneo+qOc80Wl8cjJNI2H0AKn29t/4ITfNJFJ4QbokbBnAIZqCtueby+smL\nV3D0xa0/nGKbQhEt/hlumKVeVEFBC+d2N6ddxT2G6cvnm53NVvivOdc5JNFy\nRMjGENGV+art7PgW4RN1QZ1yoP27pWUravmkCUaF6QpCAmrieIFiCHJi1ptN\nhFPL\r\n=fFbM\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIEvqeGWaZdPSFndyspgl9KeauXdDkOzBGnLGqvNS/JndAiAO6vKvqBQM1bTI7aLspbj3SN+Aer1qS60B1bRH51iNVA=="}]},"_npmUser":{"name":"bentoprojectbot","email":"bentobot@amp.dev"},"directories":{},"maintainers":[{"name":"bentoprojectbot","email":"bentobot@amp.dev"},{"name":"kristoferbaxter","email":"kbax@me.com"},{"name":"esth","email":"esther@amp.dev"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/date-display_1.2111292120.0_1638276046157_0.6108956478667023"},"_hasShrinkwrap":false},"1.2111152338.2":{"name":"@bentoproject/date-display","version":"1.2111152338.2","description":"Displays time data that you can render in your page.","author":{"name":"Bento Authors"},"license":"Apache-2.0","main":"./dist/web-component.js","module":"./dist/web-component.module.js","exports":{".":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./web-component":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./preact":{"import":"./dist/component-preact.module.js","require":"./dist/component-preact.js"},"./react":{"import":"./dist/component-react.module.js","require":"./dist/component-react.js"}},"repository":{"type":"git","url":"git+https://github.com/ampproject/amphtml.git","directory":"extensions/amp-date-display/1.0"},"homepage":"https://github.com/ampproject/amphtml/tree/main/extensions/amp-date-display/1.0","peerDependencies":{"preact":"^10.2.1","react":"^17.0.0"},"gitHead":"27e204ed206cf75fae0a37d8f110b5fedb45fa7e","bugs":{"url":"https://github.com/ampproject/amphtml/issues"},"_id":"@bentoproject/date-display@1.2111152338.2","_nodeVersion":"16.13.0","_npmVersion":"8.1.0","dist":{"integrity":"sha512-Wr+MPV4qXOxAZ/nIqE1ZqzEkbk6seZcVd7H/73xzLTmtTscXJdgBTZiCF4QcJlqL4A+K133Q8lK+WlQlNrlPLA==","shasum":"e0f56c2dfd8b228ace7e22e93489603af139c996","tarball":"https://registry.npmjs.org/@bentoproject/date-display/-/date-display-1.2111152338.2.tgz","fileCount":27,"unpackedSize":1892820,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhpmVyCRA9TVsSAnZWagAAqlwP/3Kdyf3W9xxP663p6JX8\nbmc6tvCz9flOn6ZaGeffay0JOpLv7RgHnNI4Bn37Mc3o/NV5A9W4PuVS4Lpf\nPXJrpeZ7kTLkvZu5Lm1a1IS7qLgX2xrn9yl7iS1Ed+CQPCA4Z1PIAqjRR6Ux\n3QmRSe2BnNnv9OggOOj6ZlGrxH0xwqDRGYEAXOuSJesaPE6qW7A/VmKeNxVS\nSoAbxN+Wp08vGZevF2CfJWGP3nO4CNEeuv0BlCjps6yKG6OSyWpYWD6UDLNo\nLPylMdGde4L1HwiKPnq4dQNAZe9GicVYlB9teKC1jfq0wbMdv4rE/g+Wwpcg\nbFzVvkPJangLz2pEuj73o9qABmvYjxZaR+ZpG2zfRGr1Q101GRiDbTu+YpCX\n4E3J3u3licec3YKF49/CgFiLCjln1I2yvKlFMvEmBFlMBWDbS6zD/jkW21pU\nKEIFA8L3+lzSSKRTl/GLXq2Kr+SyceZ00zWvEXOHntjFnPF6DM+cnJWINXaS\nc8TtDxuS6w/bvLZO/NPT5aK5wkF4IA8JZ+qwGpiHWoccZ6QuMz5q93NRbqIr\n2tdgT6uiomp43S6AvKMAhvJOH+9+AZrq0Ohq+i1v/gutWZpulB+cvQG2/5WP\nubJ0MnMOxfel/hDyUTfcvfPdhLNN1DfygmW9EXiHF+de7gbC5cjWy+b3rQ5j\nLyD2\r\n=LsGb\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIHQpsY5LFiLD9ALkH4R8pNCCEJt6MiJDRfC0haGtDDGgAiEArqu8nXOFv6GwhwB5TdudPab+s5dvi0zyTDqDdOz69uA="}]},"_npmUser":{"name":"bentoprojectbot","email":"bentobot@amp.dev"},"directories":{},"maintainers":[{"name":"bentoprojectbot","email":"bentobot@amp.dev"},{"name":"kristoferbaxter","email":"kbax@me.com"},{"name":"esth","email":"esther@amp.dev"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/date-display_1.2111152338.2_1638294897851_0.6237135984049567"},"_hasShrinkwrap":false},"1.2112010058.0":{"name":"@bentoproject/date-display","version":"1.2112010058.0","description":"Displays time data that you can render in your page.","author":{"name":"Bento Authors"},"license":"Apache-2.0","main":"./dist/web-component.js","module":"./dist/web-component.module.js","exports":{".":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./web-component":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./preact":{"import":"./dist/component-preact.module.js","require":"./dist/component-preact.js"},"./react":{"import":"./dist/component-react.module.js","require":"./dist/component-react.js"}},"repository":{"type":"git","url":"git+https://github.com/ampproject/amphtml.git","directory":"extensions/amp-date-display/1.0"},"homepage":"https://github.com/ampproject/amphtml/tree/main/extensions/amp-date-display/1.0","peerDependencies":{"preact":"^10.2.1","react":"^17.0.0"},"readme":"# Bento Date Display\n\nDisplays time data that you can render in your page. By providing specific [attributes](#attributes) in the Bento Date Display tag, the Bento Date Display extension returns a list of time parameters, which you can pass to [an amp-mustache template](../../amp-mustache/amp-mustache.md) for rendering. Refer to the [list below for each returned time parameter](#returned-time-parameters).\n\n## Web Component\n\nWe don't support the web component version of `bento-date-display` since `<template>` support is still being designed. This effort can be tracked in this [issue](https://go.amp.dev/issue/36619).\n\n<!--\nAn older version of this file contains the removed section, though it's incorrect:\n\nhttps://github.com/ampproject/amphtml/blob/422d171e87571c4d125a2bf956e78e92444c10e8/extensions/amp-date-display/1.0/README.md\n-->\n\n---\n\n## Preact/React Component\n\n### Import via npm\n\n```sh\nnpm install @bentoproject/date-display\n```\n\n```javascript\nimport React from 'react';\nimport {BentoDateDisplay} from '@bentoproject/date-display/react';\nimport '@bentoproject/date-display/styles.css';\n\nfunction App() {\n  return (\n    <BentoDateDisplay\n      datetime={dateTime}\n      displayIn={displayIn}\n      locale={locale}\n      render={(date) => (\n        <div>{`ISO: ${date.iso}; locale: ${date.localeString}`}</div>\n      )}\n    />\n  );\n}\n```\n\n### Interactivity and API usage\n\nThe Bento Date Display component does not have an imperative API. However, the Bento Date Display Preact/React component does accept a `render` prop that renders the consumer's template. This `render` prop should be a function which the Bento Date Display Preact/React component can use to render its template. The `render` callback will be provided a variety of date-related parameters for consumers to interpolate in the rendered template. See the [`render` prop section](#render) for more information.\n\n### Layout and style\n\nThe Bento Date Display Preact/React component allows consumers to render their own templates. These templates may use inline styles, `<style>` tags, Preact/React components that import their own stylesheets.\n\n### Props\n\n#### `datetime`\n\nRequired prop. Denotes the date and time as a Date, String, or Nuumber. If String, must be a standard ISO 8601 date string (e.g. 2017-08-02T15:05:05.000Z) or the string `now`. If set to `now`, it will use the time the page loaded to render its template. If Number, must be a POSIX epoch value in milliseconds.\n\n#### `displayIn`\n\nOptional prop that can be either `\"utc\"` or `\"local\"` and defaults to `\"local\"`. This prop indicates what timezone to display the date in. If set to the value `\"utc\"`, the component will convert the given date to UTC.\n\n#### `locale`\n\nAn internationalization language string for each timer unit. The default value is `en` (for English). This prop supports all values that are supported by the user's browser.\n\n#### `localeOptions`\n\nThe `localeOptions` object supports all the options under [Intl.DateTimeFormat.options](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/DateTimeFormat#parameters) parameter that specifies the formatting style to use for `localeString` format.\n\nNote that if the `displayIn` prop is set to `utc`, the value of `localeOptions.timeZone` will automatically be converted to `UTC`.\n\n#### `render`\n\nOptional callback that should render a template. The callback will be provided an object with properties/values related to the date expressed in `datetime`.\n\nBy default, the Bento Date Display component will display the [`localeString` form of the Date](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/toLocaleString) for the given locale and localeOption. See the [Returned Time Parameters section](#returned-time-parameters) for more details on how each property will be displayed.\n\n```typescript\n(dateParams: DateParams) => JSXInternal.Element\ninterface DateParams {\n  day: number;\n  dayName: string;\n  dayNameShort: string;\n  dayPeriod: string;\n  dayTwoDigit: string;\n  hour: number;\n  hour12: number;\n  hour12TwoDigit: string;\n  hourTwoDigit: string;\n  iso: string;\n  localeString: string;\n  minute: number;\n  minuteTwoDigit: string;\n  month: number;\n  monthName: string;\n  monthNameShort: string;\n  monthTwoDigit: string;\n  second: number;\n  secondTwoDigit: string;\n  timeZoneName: string;\n  timeZoneNameShort: string;\n  year: number;\n  yearTwoDi: string;\n}\n```\n\n### Returned Time Parameters\n\nThis table lists the format you can specify in your Mustache template:\n\n| Format            | Meaning                                                       |\n| ----------------- | ------------------------------------------------------------- |\n| day               | 1, 2, ...12, 13, etc.                                         |\n| dayName           | string,                                                       |\n| dayNameShort      | string,                                                       |\n| dayPeriod         | string,                                                       |\n| dayTwoDigit       | 01, 02, 03, ..., 12, 13, etc.                                 |\n| hour              | 0, 1, 2, 3, ..., 12, 13, ..., 22, 23                          |\n| hour12            | 1, 2, 3, ..., 12, 1, 2, ..., 11, 12                           |\n| hour12TwoDigit    | 01, 02, ..., 12, 01, 02, ..., 11, 12                          |\n| hourTwoDigit      | 00, 01, 02, ..., 12, 13, ..., 22, 23                          |\n| iso               | A standard ISO8601 date string e.g. 2019-01-23T15:31:21.213Z, |\n| localeString      | A string with a language sensitive representation.            |\n| minute            | 0, 1, 2, ..., 58, 59                                          |\n| minuteTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| month             | 1, 2, 3, ..., 12                                              |\n| monthName         | Internationalized month name string.                          |\n| monthNameShort    | Internationalized abbreviated month name string.,             |\n| monthTwoDigit     | 01, 02, ..., 11, 12                                           |\n| second            | 0, 1, 2, ..., 58, 59                                          |\n| secondTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| timeZoneName      | Internationalized timezone, like `Pacific Daylight Time`      |\n| timeZoneNameShort | Internationalized timezone, abbreviated, like `PST`           |\n| year              | 0, 1, 2, ..., 1999, 2000, 2001, etc.                          |\n| yearTwoDigit      | 00, 01, 02, ..., 17, 18, 19, ..., 98, 99                      |\n","readmeFilename":"README.md","gitHead":"6d1060a3a4288fb99047cc700661d589bc9e2a01","bugs":{"url":"https://github.com/ampproject/amphtml/issues"},"_id":"@bentoproject/date-display@1.2112010058.0","_nodeVersion":"16.13.0","_npmVersion":"8.1.0","dist":{"integrity":"sha512-9KzqDH9lYw6AdtTseSjAgYbTYZRVW+CmMNHxGkLI5+MO2Yg58kItF8wcNoaKbZj3qKkZxTxmEs/i0Fal57dx4g==","shasum":"a15d6ca3c7fdcadf04a9e76bee36b88641ad0251","tarball":"https://registry.npmjs.org/@bentoproject/date-display/-/date-display-1.2112010058.0.tgz","fileCount":27,"unpackedSize":1893092,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhp2gzCRA9TVsSAnZWagAA/fQP/j+Voeaj9G0QQTi2cXDd\nnJo70nx3LU4iakMQGvYxVjToVu1njzSggKAYO8BhrcMpZoi7rx0Xy8ONZizt\nPN2T4KjbD649yULRIEfKeXivFPYrWdni8lsQCUy0VnwoQENrlcsQN2jgiccb\n+Qi4z0i+hKB+lxqEaHHXzfVelfY4wxZgdjTkqzilTTJ0t/8ZXMJjUf54bMPs\nKLSb0tFjAl7Waipe2uIllfk2e6GLyPbFPQvNnabZsKVCEGFyLr2VCJMTUqFq\nlEmYNCbZV2ayliLVfgXt04il8y6+OzyCDNqTuPG3yo7Dj+Yi3gMqdlqvU+B7\no7BnTSX9XyG/SCcgXJYL9s/8BEQHUajVfkd9XLDn0CY6SOvTkt8+rcrYNvif\nDtkHcVmLLE9Vw1Kv5h/s5uY2ddUijvkW6i59DoIZWa/AC0xXUAkbQi+oz1t2\n1qIg2HY9+Faf8TLfnv3A+KkcLRGevobqmjRdPoiu596UUN/NKSIW+SVjOtyT\nAZjYtS7QFzSVG2BVIIIUvewhjyYd+SuNVyoiDCVAcaCML+ZpdjFqVbiiN7Ta\nVok4W3QdjeG3g4vQn+UHn/FQ+pV1ajAJQLYjVRrpvgGzopiX7RBK34j/BskZ\nREfQldvb5cg8pUME/DKzIOfQzgX/YdO8eBsAm2NOskYJyVL7a8e2WjMfaMjs\nbGJf\r\n=7T1r\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIASV5m9RZuy1OTbtFrb4dtJ2ul+dLpbLxA3YyFVUaFG+AiAF2Q0KahrjFU1ZDkg/6Z+vOt761l8ipe/AvWz9GpZvIw=="}]},"_npmUser":{"name":"bentoprojectbot","email":"bentobot@amp.dev"},"directories":{},"maintainers":[{"name":"bentoprojectbot","email":"bentobot@amp.dev"},{"name":"kristoferbaxter","email":"kbax@me.com"},{"name":"esth","email":"esther@amp.dev"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/date-display_1.2112010058.0_1638361139624_0.44136362284922903"},"_hasShrinkwrap":false},"1.2112012300.0":{"name":"@bentoproject/date-display","version":"1.2112012300.0","description":"Displays time data that you can render in your page.","author":{"name":"Bento Authors"},"license":"Apache-2.0","main":"./dist/web-component.js","module":"./dist/web-component.module.js","exports":{".":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./web-component":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./preact":{"import":"./dist/component-preact.module.js","require":"./dist/component-preact.js"},"./react":{"import":"./dist/component-react.module.js","require":"./dist/component-react.js"}},"repository":{"type":"git","url":"git+https://github.com/ampproject/amphtml.git","directory":"extensions/amp-date-display/1.0"},"homepage":"https://github.com/ampproject/amphtml/tree/main/extensions/amp-date-display/1.0","peerDependencies":{"preact":"^10.2.1","react":"^17.0.0"},"readme":"# Bento Date Display\n\nDisplays time data that you can render in your page. By providing specific [attributes](#attributes) in the Bento Date Display tag, the Bento Date Display extension returns a list of time parameters, which you can pass to [an amp-mustache template](../../amp-mustache/amp-mustache.md) for rendering. Refer to the [list below for each returned time parameter](#returned-time-parameters).\n\n## Web Component\n\nWe don't support the web component version of `bento-date-display` since `<template>` support is still being designed. This effort can be tracked in this [issue](https://go.amp.dev/issue/36619).\n\n<!--\nAn older version of this file contains the removed section, though it's incorrect:\n\nhttps://github.com/ampproject/amphtml/blob/422d171e87571c4d125a2bf956e78e92444c10e8/extensions/amp-date-display/1.0/README.md\n-->\n\n---\n\n## Preact/React Component\n\n### Import via npm\n\n```sh\nnpm install @bentoproject/date-display\n```\n\n```javascript\nimport React from 'react';\nimport {BentoDateDisplay} from '@bentoproject/date-display/react';\nimport '@bentoproject/date-display/styles.css';\n\nfunction App() {\n  return (\n    <BentoDateDisplay\n      datetime={dateTime}\n      displayIn={displayIn}\n      locale={locale}\n      render={(date) => (\n        <div>{`ISO: ${date.iso}; locale: ${date.localeString}`}</div>\n      )}\n    />\n  );\n}\n```\n\n### Interactivity and API usage\n\nThe Bento Date Display component does not have an imperative API. However, the Bento Date Display Preact/React component does accept a `render` prop that renders the consumer's template. This `render` prop should be a function which the Bento Date Display Preact/React component can use to render its template. The `render` callback will be provided a variety of date-related parameters for consumers to interpolate in the rendered template. See the [`render` prop section](#render) for more information.\n\n### Layout and style\n\nThe Bento Date Display Preact/React component allows consumers to render their own templates. These templates may use inline styles, `<style>` tags, Preact/React components that import their own stylesheets.\n\n### Props\n\n#### `datetime`\n\nRequired prop. Denotes the date and time as a Date, String, or Nuumber. If String, must be a standard ISO 8601 date string (e.g. 2017-08-02T15:05:05.000Z) or the string `now`. If set to `now`, it will use the time the page loaded to render its template. If Number, must be a POSIX epoch value in milliseconds.\n\n#### `displayIn`\n\nOptional prop that can be either `\"utc\"` or `\"local\"` and defaults to `\"local\"`. This prop indicates what timezone to display the date in. If set to the value `\"utc\"`, the component will convert the given date to UTC.\n\n#### `locale`\n\nAn internationalization language string for each timer unit. The default value is `en` (for English). This prop supports all values that are supported by the user's browser.\n\n#### `localeOptions`\n\nThe `localeOptions` object supports all the options under [Intl.DateTimeFormat.options](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/DateTimeFormat#parameters) parameter that specifies the formatting style to use for `localeString` format.\n\nNote that if the `displayIn` prop is set to `utc`, the value of `localeOptions.timeZone` will automatically be converted to `UTC`.\n\n#### `render`\n\nOptional callback that should render a template. The callback will be provided an object with properties/values related to the date expressed in `datetime`.\n\nBy default, the Bento Date Display component will display the [`localeString` form of the Date](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/toLocaleString) for the given locale and localeOption. See the [Returned Time Parameters section](#returned-time-parameters) for more details on how each property will be displayed.\n\n```typescript\n(dateParams: DateParams) => JSXInternal.Element\ninterface DateParams {\n  day: number;\n  dayName: string;\n  dayNameShort: string;\n  dayPeriod: string;\n  dayTwoDigit: string;\n  hour: number;\n  hour12: number;\n  hour12TwoDigit: string;\n  hourTwoDigit: string;\n  iso: string;\n  localeString: string;\n  minute: number;\n  minuteTwoDigit: string;\n  month: number;\n  monthName: string;\n  monthNameShort: string;\n  monthTwoDigit: string;\n  second: number;\n  secondTwoDigit: string;\n  timeZoneName: string;\n  timeZoneNameShort: string;\n  year: number;\n  yearTwoDi: string;\n}\n```\n\n### Returned Time Parameters\n\nThis table lists the format you can specify in your Mustache template:\n\n| Format            | Meaning                                                       |\n| ----------------- | ------------------------------------------------------------- |\n| day               | 1, 2, ...12, 13, etc.                                         |\n| dayName           | string,                                                       |\n| dayNameShort      | string,                                                       |\n| dayPeriod         | string,                                                       |\n| dayTwoDigit       | 01, 02, 03, ..., 12, 13, etc.                                 |\n| hour              | 0, 1, 2, 3, ..., 12, 13, ..., 22, 23                          |\n| hour12            | 1, 2, 3, ..., 12, 1, 2, ..., 11, 12                           |\n| hour12TwoDigit    | 01, 02, ..., 12, 01, 02, ..., 11, 12                          |\n| hourTwoDigit      | 00, 01, 02, ..., 12, 13, ..., 22, 23                          |\n| iso               | A standard ISO8601 date string e.g. 2019-01-23T15:31:21.213Z, |\n| localeString      | A string with a language sensitive representation.            |\n| minute            | 0, 1, 2, ..., 58, 59                                          |\n| minuteTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| month             | 1, 2, 3, ..., 12                                              |\n| monthName         | Internationalized month name string.                          |\n| monthNameShort    | Internationalized abbreviated month name string.,             |\n| monthTwoDigit     | 01, 02, ..., 11, 12                                           |\n| second            | 0, 1, 2, ..., 58, 59                                          |\n| secondTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| timeZoneName      | Internationalized timezone, like `Pacific Daylight Time`      |\n| timeZoneNameShort | Internationalized timezone, abbreviated, like `PST`           |\n| year              | 0, 1, 2, ..., 1999, 2000, 2001, etc.                          |\n| yearTwoDigit      | 00, 01, 02, ..., 17, 18, 19, ..., 98, 99                      |\n","readmeFilename":"README.md","gitHead":"4ecf84d856583465c1ab59847234535fed16d55a","bugs":{"url":"https://github.com/ampproject/amphtml/issues"},"_id":"@bentoproject/date-display@1.2112012300.0","_nodeVersion":"16.13.0","_npmVersion":"8.1.0","dist":{"integrity":"sha512-0ewe173pA+kLkl1del0cqcayJ3lFRHmRcmXITOWvDkOZwRFsb2IYDIDNnBpv+bOK/UwEm4dhxPeP6dnbV0dG0w==","shasum":"4c6768bbdc609752d8b14b7e133eaee360b40734","tarball":"https://registry.npmjs.org/@bentoproject/date-display/-/date-display-1.2112012300.0.tgz","fileCount":27,"unpackedSize":1893092,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhqLxiCRA9TVsSAnZWagAAwAAP/islopCICYD00LZ7C43K\nXqAFe6tAtvXA9uDB9E6Wkh6GHA7ZUO6e34B6FuPD6Bj7VvRuMyx4UNIgB4G/\n3apGGvHuNuMttaLSP8qw3uEk/5LMhIzkE6PJPQC7URrefSA9+ayYsPu7sviy\n+Af7kr98JO6TQDszUFoDVZqEkQq+DUly1mcdxeKnlJ5vucvds0iPCY8qI5XW\n2mqls9XovKP5E8JqwHJV5SCgILOO+4lQKEoM9aK2qD3e0zeOCpwdW4Gl4Bp0\nbrLfSR4ThWb+An9Ae2i009rg458v/KhKBYtJyEg6Z8as3lIl6ulPVFpenMcU\nfZ8xUGeSjBIcFmYZaOxOp9eweDNiQTTbbGSi4Ism427fw8YqWMKeZDym49lF\nTje160wjYTGD4jkSxv1zBlXKw39o0TgCfBb3fK2un2Qhjf0q2YJnFw7cLz9B\ndKWsbfi9dEiiLvkYd5AYuo+Re+Knu3lO+CoDOTwejOqKrruWL3uVTFULk9KS\ngmhghNjKSacODBY73a1dgm+sUcU6s3MT0G9u8V4P4FWluq45XJhkdPNLVWO/\nkaWSvqyMpf8UM3Fpat7uhq9x9cXA3nkNNf1pA2qOJYJrh15etZfUiqInxpge\n2J8UmyWmMHXWOQNDFOtvzhLrxx7Sp2tFT4Wa7FJaJusjqxBpy1m0+hbCIYfx\nn5JB\r\n=vssM\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCAA4QINv+W0qWXJVUXzVweFLIckDxZsFG9pN7mCv5rQgIgUYLpjaD3OFcSfGxS5EKQRIGuoYEjG51NYZhFi2NtPrY="}]},"_npmUser":{"name":"bentoprojectbot","email":"bentobot@amp.dev"},"directories":{},"maintainers":[{"name":"bentoprojectbot","email":"bentobot@amp.dev"},{"name":"kristoferbaxter","email":"kbax@me.com"},{"name":"esth","email":"esther@amp.dev"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/date-display_1.2112012300.0_1638448226808_0.8517880759107113"},"_hasShrinkwrap":false},"1.2112021656.0":{"name":"@bentoproject/date-display","version":"1.2112021656.0","description":"Displays time data that you can render in your page.","author":{"name":"Bento Authors"},"license":"Apache-2.0","main":"./dist/web-component.js","module":"./dist/web-component.module.js","exports":{".":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./web-component":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./preact":{"import":"./dist/component-preact.module.js","require":"./dist/component-preact.js"},"./react":{"import":"./dist/component-react.module.js","require":"./dist/component-react.js"}},"repository":{"type":"git","url":"git+https://github.com/ampproject/amphtml.git","directory":"extensions/amp-date-display/1.0"},"homepage":"https://github.com/ampproject/amphtml/tree/main/extensions/amp-date-display/1.0","peerDependencies":{"preact":"^10.2.1","react":"^17.0.0"},"readme":"# Bento Date Display\n\nDisplays time data that you can render in your page. By providing specific [attributes](#attributes) in the Bento Date Display tag, the Bento Date Display extension returns a list of time parameters, which you can pass to [an amp-mustache template](../../amp-mustache/amp-mustache.md) for rendering. Refer to the [list below for each returned time parameter](#returned-time-parameters).\n\n## Web Component\n\nWe don't support the web component version of `bento-date-display` since `<template>` support is still being designed. This effort can be tracked in this [issue](https://go.amp.dev/issue/36619).\n\n<!--\nAn older version of this file contains the removed section, though it's incorrect:\n\nhttps://github.com/ampproject/amphtml/blob/422d171e87571c4d125a2bf956e78e92444c10e8/extensions/amp-date-display/1.0/README.md\n-->\n\n---\n\n## Preact/React Component\n\n### Import via npm\n\n```sh\nnpm install @bentoproject/date-display\n```\n\n```javascript\nimport React from 'react';\nimport {BentoDateDisplay} from '@bentoproject/date-display/react';\nimport '@bentoproject/date-display/styles.css';\n\nfunction App() {\n  return (\n    <BentoDateDisplay\n      datetime={dateTime}\n      displayIn={displayIn}\n      locale={locale}\n      render={(date) => (\n        <div>{`ISO: ${date.iso}; locale: ${date.localeString}`}</div>\n      )}\n    />\n  );\n}\n```\n\n### Interactivity and API usage\n\nThe Bento Date Display component does not have an imperative API. However, the Bento Date Display Preact/React component does accept a `render` prop that renders the consumer's template. This `render` prop should be a function which the Bento Date Display Preact/React component can use to render its template. The `render` callback will be provided a variety of date-related parameters for consumers to interpolate in the rendered template. See the [`render` prop section](#render) for more information.\n\n### Layout and style\n\nThe Bento Date Display Preact/React component allows consumers to render their own templates. These templates may use inline styles, `<style>` tags, Preact/React components that import their own stylesheets.\n\n### Props\n\n#### `datetime`\n\nRequired prop. Denotes the date and time as a Date, String, or Nuumber. If String, must be a standard ISO 8601 date string (e.g. 2017-08-02T15:05:05.000Z) or the string `now`. If set to `now`, it will use the time the page loaded to render its template. If Number, must be a POSIX epoch value in milliseconds.\n\n#### `displayIn`\n\nOptional prop that can be either `\"utc\"` or `\"local\"` and defaults to `\"local\"`. This prop indicates what timezone to display the date in. If set to the value `\"utc\"`, the component will convert the given date to UTC.\n\n#### `locale`\n\nAn internationalization language string for each timer unit. The default value is `en` (for English). This prop supports all values that are supported by the user's browser.\n\n#### `localeOptions`\n\nThe `localeOptions` object supports all the options under [Intl.DateTimeFormat.options](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/DateTimeFormat#parameters) parameter that specifies the formatting style to use for `localeString` format.\n\nNote that if the `displayIn` prop is set to `utc`, the value of `localeOptions.timeZone` will automatically be converted to `UTC`.\n\n#### `render`\n\nOptional callback that should render a template. The callback will be provided an object with properties/values related to the date expressed in `datetime`.\n\nBy default, the Bento Date Display component will display the [`localeString` form of the Date](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/toLocaleString) for the given locale and localeOption. See the [Returned Time Parameters section](#returned-time-parameters) for more details on how each property will be displayed.\n\n```typescript\n(dateParams: DateParams) => JSXInternal.Element\ninterface DateParams {\n  day: number;\n  dayName: string;\n  dayNameShort: string;\n  dayPeriod: string;\n  dayTwoDigit: string;\n  hour: number;\n  hour12: number;\n  hour12TwoDigit: string;\n  hourTwoDigit: string;\n  iso: string;\n  localeString: string;\n  minute: number;\n  minuteTwoDigit: string;\n  month: number;\n  monthName: string;\n  monthNameShort: string;\n  monthTwoDigit: string;\n  second: number;\n  secondTwoDigit: string;\n  timeZoneName: string;\n  timeZoneNameShort: string;\n  year: number;\n  yearTwoDi: string;\n}\n```\n\n### Returned Time Parameters\n\nThis table lists the format you can specify in your Mustache template:\n\n| Format            | Meaning                                                       |\n| ----------------- | ------------------------------------------------------------- |\n| day               | 1, 2, ...12, 13, etc.                                         |\n| dayName           | string,                                                       |\n| dayNameShort      | string,                                                       |\n| dayPeriod         | string,                                                       |\n| dayTwoDigit       | 01, 02, 03, ..., 12, 13, etc.                                 |\n| hour              | 0, 1, 2, 3, ..., 12, 13, ..., 22, 23                          |\n| hour12            | 1, 2, 3, ..., 12, 1, 2, ..., 11, 12                           |\n| hour12TwoDigit    | 01, 02, ..., 12, 01, 02, ..., 11, 12                          |\n| hourTwoDigit      | 00, 01, 02, ..., 12, 13, ..., 22, 23                          |\n| iso               | A standard ISO8601 date string e.g. 2019-01-23T15:31:21.213Z, |\n| localeString      | A string with a language sensitive representation.            |\n| minute            | 0, 1, 2, ..., 58, 59                                          |\n| minuteTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| month             | 1, 2, 3, ..., 12                                              |\n| monthName         | Internationalized month name string.                          |\n| monthNameShort    | Internationalized abbreviated month name string.,             |\n| monthTwoDigit     | 01, 02, ..., 11, 12                                           |\n| second            | 0, 1, 2, ..., 58, 59                                          |\n| secondTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| timeZoneName      | Internationalized timezone, like `Pacific Daylight Time`      |\n| timeZoneNameShort | Internationalized timezone, abbreviated, like `PST`           |\n| year              | 0, 1, 2, ..., 1999, 2000, 2001, etc.                          |\n| yearTwoDigit      | 00, 01, 02, ..., 17, 18, 19, ..., 98, 99                      |\n","readmeFilename":"README.md","gitHead":"4a66d3f7120b51959ea01867aa68d516d5e0dc36","bugs":{"url":"https://github.com/ampproject/amphtml/issues"},"_id":"@bentoproject/date-display@1.2112021656.0","_nodeVersion":"16.13.0","_npmVersion":"8.1.0","dist":{"integrity":"sha512-ovxkPysmGkH7E1BU88gd5b657Q8eiVlFcnAA4p/+GhV9KGEth9VTnL33LahN+YDYCtwciStDLGjUHpISvdV9vg==","shasum":"87098cc5eeea8d236fea3d476a441e2274618a92","tarball":"https://registry.npmjs.org/@bentoproject/date-display/-/date-display-1.2112021656.0.tgz","fileCount":27,"unpackedSize":1893092,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhqgv5CRA9TVsSAnZWagAA7bYP/RpgKv97dsyTWi9YaaX8\nYvKFSWbwv0/753KPdM/GmirRHdK+Jud4bKDE4ARqlAqhegOFrhZ27Gc45xe0\nXaQliog2r+R6hwqYbGhnie0j+h8VuhhIgVbAvzR7fdy2PLuifPxmAR7KlQjg\ndzit4SImVTpIuDsyo+gHCgAifhFIB6iY9wxktDjrCoZnEl/+U5zvxnr9B4H2\nZr1AvrxINSQO/UateiFYgTrVrE3oHH4JQBgEBZl/IQNdqtFZxhuGg4Ccav1X\ngsZ2mWhFFC1BfojwjmUaV0QoCapoVZLf211z3k8GGAh77UEYkvRMEUJgke5J\nx1+bcn+pCNlIdVaX6cTKXUrADPrtiLcfRrUlug20aYcazpWDwF6MXZF/kAWe\n3m/QTHfy+WAvdWo8VlKrYjI4nK2rEQOfn959EkhHUnjnspbaKRgHVo29Ug/6\nf2Dq/skWMge0TNsZdl2UA2hNRFCaR+bMCbNxcPonS1m0LZbnYsfUNO+NPON0\nLrHmdxhroS8V5KzbkxjKlfaMRrulU+Bwdz7oSdggYvSlkyAUXQn9xjQt1Upl\nq0NJWm/LjOUfLCaR5LXJm8V56fLBSzlx7Df9VOXPOe7dMAKNO+3W6cq+9Hyt\nwZl467BNsajcHq4wa0R4J5nnTeKIIdea/MxcwH0pa0NBxUwy1B70XtnDuXlj\nAyAN\r\n=c+Tu\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCICJvLLOrYD+XafwveizJf+KYz6fW1Tl/myMCI0koAZ1VAiB26NG0JlcevP+vBPfcaNUdo3Mtg7P/tnWOj1rKu7+aXw=="}]},"_npmUser":{"name":"bentoprojectbot","email":"bentobot@amp.dev"},"directories":{},"maintainers":[{"name":"bentoprojectbot","email":"bentobot@amp.dev"},{"name":"kristoferbaxter","email":"kbax@me.com"},{"name":"esth","email":"esther@amp.dev"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/date-display_1.2112021656.0_1638534137203_0.11600860231943577"},"_hasShrinkwrap":false},"1.2112032204.0":{"name":"@bentoproject/date-display","version":"1.2112032204.0","description":"Displays time data that you can render in your page.","author":{"name":"Bento Authors"},"license":"Apache-2.0","main":"./dist/web-component.js","module":"./dist/web-component.module.js","exports":{".":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./web-component":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./preact":{"import":"./dist/component-preact.module.js","require":"./dist/component-preact.js"},"./react":{"import":"./dist/component-react.module.js","require":"./dist/component-react.js"}},"repository":{"type":"git","url":"git+https://github.com/ampproject/amphtml.git","directory":"extensions/amp-date-display/1.0"},"homepage":"https://github.com/ampproject/amphtml/tree/main/extensions/amp-date-display/1.0","peerDependencies":{"preact":"^10.2.1","react":"^17.0.0"},"gitHead":"80ca53e97f8ac619b78398d429e0031f40cf68c0","bugs":{"url":"https://github.com/ampproject/amphtml/issues"},"_id":"@bentoproject/date-display@1.2112032204.0","_nodeVersion":"16.13.0","_npmVersion":"8.1.0","dist":{"integrity":"sha512-A/eHKZ0gWIk/1QGr1GJpLtg2x2QLrF+7YBEdI7PQX988EG5an0nIomLAG2H/4MKXQWmoJQL+zPcQyP6+CqE18g==","shasum":"3dd2e0bdcf5f911b388fe1f080a9e5185c046272","tarball":"https://registry.npmjs.org/@bentoproject/date-display/-/date-display-1.2112032204.0.tgz","fileCount":27,"unpackedSize":1881889,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhq1zqCRA9TVsSAnZWagAAvqoP/1F/u26BL5RlPK18g3y4\nQFV7ekGa5Ja1JxRy4+Nef1VFG91GpKEm27aTE3T5zjTE+mf63XM2uYVVb+Ts\n4FLy/Zr7F9hMIeaCEGcIbyJdjXEOUkLsxIOiPnV+yGB/SLo5ihZ2GR5pgLTU\nF21S9VaurD+6s7WfIzyWr5Jv4RAIpsBqCG6PAdISW9zAzhNEasEyp188NFPn\nlPm1MyQE08IHIEHVbMZt5CG4FE8pxCeYrUaYBqXBwQqlpg/bFuLvDXkNFMEV\nFBeXle6vUZcNsqbRkzHrpNA/5q8lK1BBkWX+REwOWzFMZNoMGMFSiyH9sOLR\n/D42F1v1tq8Ak6fIVwS+YT+Q6rTD2Wmgw8a6zSRWgya34F595NIWEKels0BA\nCCrDYTj32lSYC7LD6/T8Hriiay/3meyg4FeGksPqmNGchkVeEk/+0i1PNIpg\nJzycqCnS8aYSTKS2h3flBshX1v7240pbjQMt3cE46lIlClxpgucncoVLWyjJ\nkg7VVx1G14c3EkFPBlAJw+1Y9aXsOozFsAM4aRjVBgXg3BqtoXUMD5lFZDuL\nDQ7ytlNFlOKqifShVOXRVDg9/AUmCeCHKOVvVojOndwAUMuaATuZ1DMbnpEI\nHI6vVhnqiy1qjjEZ2Is95NddoGycKj38P3s9iKhinNJMLoImRQv8ef8dIQBo\niQaz\r\n=RGNY\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDZuwhqUhpDJb4qskT0uRbnSXn3Xl6PXZxx2NZ6FU/CawIhALXSs2andJaR/nEFzrjYY/5sAFuqmpgBr+lVKqvucHoa"}]},"_npmUser":{"name":"bentoprojectbot","email":"bentobot@amp.dev"},"directories":{},"maintainers":[{"name":"bentoprojectbot","email":"bentobot@amp.dev"},{"name":"kristoferbaxter","email":"kbax@me.com"},{"name":"esth","email":"esther@amp.dev"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/date-display_1.2112032204.0_1638620394419_0.5931193645748887"},"_hasShrinkwrap":false},"1.2112062322.0":{"name":"@bentoproject/date-display","version":"1.2112062322.0","description":"Displays time data that you can render in your page.","author":{"name":"Bento Authors"},"license":"Apache-2.0","main":"./dist/web-component.js","module":"./dist/web-component.module.js","exports":{".":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./web-component":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./preact":{"import":"./dist/component-preact.module.js","require":"./dist/component-preact.js"},"./react":{"import":"./dist/component-react.module.js","require":"./dist/component-react.js"}},"repository":{"type":"git","url":"git+https://github.com/ampproject/amphtml.git","directory":"extensions/amp-date-display/1.0"},"homepage":"https://github.com/ampproject/amphtml/tree/main/extensions/amp-date-display/1.0","peerDependencies":{"preact":"^10.2.1","react":"^17.0.0"},"readme":"# Bento Date Display\n\nDisplays time data that you can render in your page. By providing specific [attributes](#attributes) in the Bento Date Display tag, the Bento Date Display extension returns a list of time parameters, which you can pass to [an amp-mustache template](../../amp-mustache/amp-mustache.md) for rendering. Refer to the [list below for each returned time parameter](#returned-time-parameters).\n\n## Web Component\n\nWe don't support the web component version of `bento-date-display` since `<template>` support is still being designed. This effort can be tracked in this [issue](https://go.amp.dev/issue/36619).\n\n<!--\nAn older version of this file contains the removed section, though it's incorrect:\n\nhttps://github.com/ampproject/amphtml/blob/422d171e87571c4d125a2bf956e78e92444c10e8/extensions/amp-date-display/1.0/README.md\n-->\n\n---\n\n## Preact/React Component\n\n### Import via npm\n\n```sh\nnpm install @bentoproject/date-display\n```\n\n```javascript\nimport React from 'react';\nimport {BentoDateDisplay} from '@bentoproject/date-display/react';\nimport '@bentoproject/date-display/styles.css';\n\nfunction App() {\n  return (\n    <BentoDateDisplay\n      datetime={dateTime}\n      displayIn={displayIn}\n      locale={locale}\n      render={(date) => (\n        <div>{`ISO: ${date.iso}; locale: ${date.localeString}`}</div>\n      )}\n    />\n  );\n}\n```\n\n### Interactivity and API usage\n\nThe Bento Date Display component does not have an imperative API. However, the Bento Date Display Preact/React component does accept a `render` prop that renders the consumer's template. This `render` prop should be a function which the Bento Date Display Preact/React component can use to render its template. The `render` callback will be provided a variety of date-related parameters for consumers to interpolate in the rendered template. See the [`render` prop section](#render) for more information.\n\n### Layout and style\n\nThe Bento Date Display Preact/React component allows consumers to render their own templates. These templates may use inline styles, `<style>` tags, Preact/React components that import their own stylesheets.\n\n### Props\n\n#### `datetime`\n\nRequired prop. Denotes the date and time as a Date, String, or Nuumber. If String, must be a standard ISO 8601 date string (e.g. 2017-08-02T15:05:05.000Z) or the string `now`. If set to `now`, it will use the time the page loaded to render its template. If Number, must be a POSIX epoch value in milliseconds.\n\n#### `displayIn`\n\nOptional prop that can be either `\"utc\"` or `\"local\"` and defaults to `\"local\"`. This prop indicates what timezone to display the date in. If set to the value `\"utc\"`, the component will convert the given date to UTC.\n\n#### `locale`\n\nAn internationalization language string for each timer unit. The default value is `en` (for English). This prop supports all values that are supported by the user's browser.\n\n#### `localeOptions`\n\nThe `localeOptions` object supports all the options under [Intl.DateTimeFormat.options](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/DateTimeFormat#parameters) parameter that specifies the formatting style to use for `localeString` format.\n\nNote that if the `displayIn` prop is set to `utc`, the value of `localeOptions.timeZone` will automatically be converted to `UTC`.\n\n#### `render`\n\nOptional callback that should render a template. The callback will be provided an object with properties/values related to the date expressed in `datetime`.\n\nBy default, the Bento Date Display component will display the [`localeString` form of the Date](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/toLocaleString) for the given locale and localeOption. See the [Returned Time Parameters section](#returned-time-parameters) for more details on how each property will be displayed.\n\n```typescript\n(dateParams: DateParams) => JSXInternal.Element\ninterface DateParams {\n  day: number;\n  dayName: string;\n  dayNameShort: string;\n  dayPeriod: string;\n  dayTwoDigit: string;\n  hour: number;\n  hour12: number;\n  hour12TwoDigit: string;\n  hourTwoDigit: string;\n  iso: string;\n  localeString: string;\n  minute: number;\n  minuteTwoDigit: string;\n  month: number;\n  monthName: string;\n  monthNameShort: string;\n  monthTwoDigit: string;\n  second: number;\n  secondTwoDigit: string;\n  timeZoneName: string;\n  timeZoneNameShort: string;\n  year: number;\n  yearTwoDi: string;\n}\n```\n\n### Returned Time Parameters\n\nThis table lists the format you can specify in your Mustache template:\n\n| Format            | Meaning                                                       |\n| ----------------- | ------------------------------------------------------------- |\n| day               | 1, 2, ...12, 13, etc.                                         |\n| dayName           | string,                                                       |\n| dayNameShort      | string,                                                       |\n| dayPeriod         | string,                                                       |\n| dayTwoDigit       | 01, 02, 03, ..., 12, 13, etc.                                 |\n| hour              | 0, 1, 2, 3, ..., 12, 13, ..., 22, 23                          |\n| hour12            | 1, 2, 3, ..., 12, 1, 2, ..., 11, 12                           |\n| hour12TwoDigit    | 01, 02, ..., 12, 01, 02, ..., 11, 12                          |\n| hourTwoDigit      | 00, 01, 02, ..., 12, 13, ..., 22, 23                          |\n| iso               | A standard ISO8601 date string e.g. 2019-01-23T15:31:21.213Z, |\n| localeString      | A string with a language sensitive representation.            |\n| minute            | 0, 1, 2, ..., 58, 59                                          |\n| minuteTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| month             | 1, 2, 3, ..., 12                                              |\n| monthName         | Internationalized month name string.                          |\n| monthNameShort    | Internationalized abbreviated month name string.,             |\n| monthTwoDigit     | 01, 02, ..., 11, 12                                           |\n| second            | 0, 1, 2, ..., 58, 59                                          |\n| secondTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| timeZoneName      | Internationalized timezone, like `Pacific Daylight Time`      |\n| timeZoneNameShort | Internationalized timezone, abbreviated, like `PST`           |\n| year              | 0, 1, 2, ..., 1999, 2000, 2001, etc.                          |\n| yearTwoDigit      | 00, 01, 02, ..., 17, 18, 19, ..., 98, 99                      |\n","readmeFilename":"README.md","gitHead":"cddcce65024c209c9420ce0567f525aef4fc971f","bugs":{"url":"https://github.com/ampproject/amphtml/issues"},"_id":"@bentoproject/date-display@1.2112062322.0","_nodeVersion":"16.13.0","_npmVersion":"8.1.0","dist":{"integrity":"sha512-zt4rLy5/b0EL4vz1Ou6nnmNLMcUqnWISvMa7P7O8vjrlaav298BWZhzng+2736+bL92mIZFBcpOwRMWBnKsmjg==","shasum":"f8683671eeb2bc8ca19d4c79848ae80b837be27b","tarball":"https://registry.npmjs.org/@bentoproject/date-display/-/date-display-1.2112062322.0.tgz","fileCount":27,"unpackedSize":1883999,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhr1MSCRA9TVsSAnZWagAA008P/0p3bQ7RZdGlLVop3UUF\n8eR/3m/3ZWuCjmiiI2sJ2XrKGpYudL6O1uhj1rEA1nCS7PDdo0eGsJm488Sn\nHx2PGNTee8RuycunmIYxwU436Iv7MOeONQJd09j0mMrtJeWKouoUO9mtgo41\n7c+KTzbax9cpAB3TCosbE2WM5BuWQqQWHBNwLucxXHmP1SrzwI1RSI1GD0Th\nyBDusk8Bg8gyNgn/jwA56qE2vBorB4VgtdfnPW0RWvz/UuBseLoq3PuSjQi8\n0TssDm6XM8SCG8XzuHnOYabE2UBw9pVp/xHeqZlY8SJtYeTcI1phego4rPnB\nmmH28c3OwGuGna/HVVx+isMJe8P7ydk6twjnu7x3sKFx6NGg7Ct45S4qTjV0\nlxId7EKJwf8MCzQBSu+XXWpq76QVlhtQfIWeN4ehRCNdKRLQtZUqIrSIc5qp\n3hJz5/EFdEjZGrSP7Nw5UBHax5VEXQezOA/9D15AcjchQ15eok6DmJVV8B3Y\nKrT4rq4UmQG3hd9z83LIRFJSTkJE0c09FusgV4VX+UBqWjulUNBMVl3AxIbS\n//54UBL+vM9/ynVVuqwVhvX6W6Dq1YwIkLkSoiRzau06sNN8l9ByngGOjqa4\nwlOIasdV+ErtGj5Y6aBxBajHyqEA4KMhKccmv+cYLt1IjlQ/bKqUUvAV/F20\nQG1L\r\n=Qpvq\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIBFtknIwbSfsxJZfPjCDfAx/sW8TADBvW27hvNhwdZMUAiEAvMDZBUE7i//NCEqFQIY+ItjJTNPvM/E8USwp91nrWLQ="}]},"_npmUser":{"name":"bentoprojectbot","email":"bentobot@amp.dev"},"directories":{},"maintainers":[{"name":"bentoprojectbot","email":"bentobot@amp.dev"},{"name":"kristoferbaxter","email":"kbax@me.com"},{"name":"esth","email":"esther@amp.dev"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/date-display_1.2112062322.0_1638880018704_0.47281801195240414"},"_hasShrinkwrap":false},"1.2112062322.2":{"name":"@bentoproject/date-display","version":"1.2112062322.2","description":"Displays time data that you can render in your page.","author":{"name":"Bento Authors"},"license":"Apache-2.0","main":"./dist/web-component.js","module":"./dist/web-component.module.js","exports":{".":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./web-component":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./preact":{"import":"./dist/component-preact.module.js","require":"./dist/component-preact.js"},"./react":{"import":"./dist/component-react.module.js","require":"./dist/component-react.js"}},"repository":{"type":"git","url":"git+https://github.com/ampproject/amphtml.git","directory":"extensions/amp-date-display/1.0"},"homepage":"https://github.com/ampproject/amphtml/tree/main/extensions/amp-date-display/1.0","peerDependencies":{"preact":"^10.2.1","react":"^17.0.0"},"gitHead":"3e8072d191c8771ac14d19f2122bba93b872265b","bugs":{"url":"https://github.com/ampproject/amphtml/issues"},"_id":"@bentoproject/date-display@1.2112062322.2","_nodeVersion":"16.13.0","_npmVersion":"8.1.0","dist":{"integrity":"sha512-QXDy44LKp/fF2a01pU42fv1GgvtZuNXoqYkL+pTVWdYuNwyMxch/K04WiOo62ZiXlH9HZPHY1WDv13TflJkJzg==","shasum":"0a04c776dc8941e4aa94b9c9999ec2fa3fd8520e","tarball":"https://registry.npmjs.org/@bentoproject/date-display/-/date-display-1.2112062322.2.tgz","fileCount":27,"unpackedSize":1883999,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhr+A5CRA9TVsSAnZWagAA13kP/2rdStBxQhw8H2FClysH\nMVe/LuxR2kQurfHywOQv4r43+BbbSH8CQ73FkfF/8KnlW66zeGKlEi6A9woQ\n6Iz3Wdm09G7tKK8eukRXv7VBR9wvd52WFmbpXDs1mVGFMdFOm94hYKnmLmcc\niiIr+eEFk0dLItiQtverqVXa4ZeSoAzecuWKxGRt2xq2TuHDXKD1fn3PDivB\nvpq4x/H4ddaB6Zel2CHfNGeLkvjmUA/RaZCQ/Stl5g0A/IPzA2OzMVTf3nxu\nLLEezKpKncg9f6wi5W4XuYVpiHAGKChrH5X2OTdr9YiNL1slU/ECYFMpH6tW\nIFnh+zX7sWwLeDgnalAU0LI7fpb0t95nX6144Mu+e8Xv5jnr5BS+Uoqdbs8J\n8rF02GAZVKEAeaffW/lX3xltpTyt5sQ+wCQ5N2XXDrfJXF2Dz/XUhR8e2UlL\ny6q8owl2PQDIdqlB/xZrhpVupc4qm57xCQXcu2VXnbZGLHEKRj/868d+nwEi\nJhk5e58gMvckW7x9N0P5/5S1XmpS56MqaCmfmOrE4J9MaOGGJvEJjoRG9kPy\naFL+kA1iPxHMXwtWh3aIqZ0V8mxK7Nba7t9M4JRe4ks5NKHLJkwVAVL2QBfe\nTZOYtHlosacsNd655P0TYNLhDWuvi5V+KhcHzmdBv1GT1PH9OPYImIO2qt4u\nCdvz\r\n=pl+/\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCID1EStvx2YZmAFiOcpmZE8TQeWWQu6ONB88I3OpymtI0AiAcyEDrHR3v6zHeQN0RG10IcPH9opn/9X9qfiMLvkTRzQ=="}]},"_npmUser":{"name":"bentoprojectbot","email":"bentobot@amp.dev"},"directories":{},"maintainers":[{"name":"bentoprojectbot","email":"bentobot@amp.dev"},{"name":"kristoferbaxter","email":"kbax@me.com"},{"name":"esth","email":"esther@amp.dev"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/date-display_1.2112062322.2_1638916153545_0.2636405917455149"},"_hasShrinkwrap":false},"1.2112080230.0":{"name":"@bentoproject/date-display","version":"1.2112080230.0","description":"Displays time data that you can render in your page.","author":{"name":"Bento Authors"},"license":"Apache-2.0","main":"./dist/web-component.js","module":"./dist/web-component.module.js","exports":{".":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./web-component":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./preact":{"import":"./dist/component-preact.module.js","require":"./dist/component-preact.js"},"./react":{"import":"./dist/component-react.module.js","require":"./dist/component-react.js"}},"repository":{"type":"git","url":"git+https://github.com/ampproject/amphtml.git","directory":"extensions/amp-date-display/1.0"},"homepage":"https://github.com/ampproject/amphtml/tree/main/extensions/amp-date-display/1.0","peerDependencies":{"preact":"^10.2.1","react":"^17.0.0"},"readme":"# Bento Date Display\n\nDisplays time data that you can render in your page. By providing specific [attributes](#attributes) in the Bento Date Display tag, the Bento Date Display extension returns a list of time parameters, which you can pass to [an amp-mustache template](../../amp-mustache/amp-mustache.md) for rendering. Refer to the [list below for each returned time parameter](#returned-time-parameters).\n\n## Web Component\n\nWe don't support the web component version of `bento-date-display` since `<template>` support is still being designed. This effort can be tracked in this [issue](https://go.amp.dev/issue/36619).\n\n<!--\nAn older version of this file contains the removed section, though it's incorrect:\n\nhttps://github.com/ampproject/amphtml/blob/422d171e87571c4d125a2bf956e78e92444c10e8/extensions/amp-date-display/1.0/README.md\n-->\n\n---\n\n## Preact/React Component\n\n### Import via npm\n\n```sh\nnpm install @bentoproject/date-display\n```\n\n```javascript\nimport React from 'react';\nimport {BentoDateDisplay} from '@bentoproject/date-display/react';\nimport '@bentoproject/date-display/styles.css';\n\nfunction App() {\n  return (\n    <BentoDateDisplay\n      datetime={dateTime}\n      displayIn={displayIn}\n      locale={locale}\n      render={(date) => (\n        <div>{`ISO: ${date.iso}; locale: ${date.localeString}`}</div>\n      )}\n    />\n  );\n}\n```\n\n### Interactivity and API usage\n\nThe Bento Date Display component does not have an imperative API. However, the Bento Date Display Preact/React component does accept a `render` prop that renders the consumer's template. This `render` prop should be a function which the Bento Date Display Preact/React component can use to render its template. The `render` callback will be provided a variety of date-related parameters for consumers to interpolate in the rendered template. See the [`render` prop section](#render) for more information.\n\n### Layout and style\n\nThe Bento Date Display Preact/React component allows consumers to render their own templates. These templates may use inline styles, `<style>` tags, Preact/React components that import their own stylesheets.\n\n### Props\n\n#### `datetime`\n\nRequired prop. Denotes the date and time as a Date, String, or Nuumber. If String, must be a standard ISO 8601 date string (e.g. 2017-08-02T15:05:05.000Z) or the string `now`. If set to `now`, it will use the time the page loaded to render its template. If Number, must be a POSIX epoch value in milliseconds.\n\n#### `displayIn`\n\nOptional prop that can be either `\"utc\"` or `\"local\"` and defaults to `\"local\"`. This prop indicates what timezone to display the date in. If set to the value `\"utc\"`, the component will convert the given date to UTC.\n\n#### `locale`\n\nAn internationalization language string for each timer unit. The default value is `en` (for English). This prop supports all values that are supported by the user's browser.\n\n#### `localeOptions`\n\nThe `localeOptions` object supports all the options under [Intl.DateTimeFormat.options](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/DateTimeFormat#parameters) parameter that specifies the formatting style to use for `localeString` format.\n\nNote that if the `displayIn` prop is set to `utc`, the value of `localeOptions.timeZone` will automatically be converted to `UTC`.\n\n#### `render`\n\nOptional callback that should render a template. The callback will be provided an object with properties/values related to the date expressed in `datetime`.\n\nBy default, the Bento Date Display component will display the [`localeString` form of the Date](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/toLocaleString) for the given locale and localeOption. See the [Returned Time Parameters section](#returned-time-parameters) for more details on how each property will be displayed.\n\n```typescript\n(dateParams: DateParams) => JSXInternal.Element\ninterface DateParams {\n  day: number;\n  dayName: string;\n  dayNameShort: string;\n  dayPeriod: string;\n  dayTwoDigit: string;\n  hour: number;\n  hour12: number;\n  hour12TwoDigit: string;\n  hourTwoDigit: string;\n  iso: string;\n  localeString: string;\n  minute: number;\n  minuteTwoDigit: string;\n  month: number;\n  monthName: string;\n  monthNameShort: string;\n  monthTwoDigit: string;\n  second: number;\n  secondTwoDigit: string;\n  timeZoneName: string;\n  timeZoneNameShort: string;\n  year: number;\n  yearTwoDi: string;\n}\n```\n\n### Returned Time Parameters\n\nThis table lists the format you can specify in your Mustache template:\n\n| Format            | Meaning                                                       |\n| ----------------- | ------------------------------------------------------------- |\n| day               | 1, 2, ...12, 13, etc.                                         |\n| dayName           | string,                                                       |\n| dayNameShort      | string,                                                       |\n| dayPeriod         | string,                                                       |\n| dayTwoDigit       | 01, 02, 03, ..., 12, 13, etc.                                 |\n| hour              | 0, 1, 2, 3, ..., 12, 13, ..., 22, 23                          |\n| hour12            | 1, 2, 3, ..., 12, 1, 2, ..., 11, 12                           |\n| hour12TwoDigit    | 01, 02, ..., 12, 01, 02, ..., 11, 12                          |\n| hourTwoDigit      | 00, 01, 02, ..., 12, 13, ..., 22, 23                          |\n| iso               | A standard ISO8601 date string e.g. 2019-01-23T15:31:21.213Z, |\n| localeString      | A string with a language sensitive representation.            |\n| minute            | 0, 1, 2, ..., 58, 59                                          |\n| minuteTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| month             | 1, 2, 3, ..., 12                                              |\n| monthName         | Internationalized month name string.                          |\n| monthNameShort    | Internationalized abbreviated month name string.,             |\n| monthTwoDigit     | 01, 02, ..., 11, 12                                           |\n| second            | 0, 1, 2, ..., 58, 59                                          |\n| secondTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| timeZoneName      | Internationalized timezone, like `Pacific Daylight Time`      |\n| timeZoneNameShort | Internationalized timezone, abbreviated, like `PST`           |\n| year              | 0, 1, 2, ..., 1999, 2000, 2001, etc.                          |\n| yearTwoDigit      | 00, 01, 02, ..., 17, 18, 19, ..., 98, 99                      |\n","readmeFilename":"README.md","gitHead":"6d03180e136b7ae380fb9d5d3d6fd8c0d5b28e04","bugs":{"url":"https://github.com/ampproject/amphtml/issues"},"_id":"@bentoproject/date-display@1.2112080230.0","_nodeVersion":"16.13.0","_npmVersion":"8.1.0","dist":{"integrity":"sha512-rdpdWxE/EqdRJPrm+OqglMma5qe4/rFeZMmAbvttbn3OtONRBqCOqzq16vzC1rf5/r/HDWrjec4G/Reir2rQHQ==","shasum":"b4f2226993ebc77318d077182644985400afb8ac","tarball":"https://registry.npmjs.org/@bentoproject/date-display/-/date-display-1.2112080230.0.tgz","fileCount":27,"unpackedSize":1883999,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhsLFcCRA9TVsSAnZWagAA3poP/jpF2MpsYykA3SslzLpw\nITDjdfiTTJfvXMwSeQIYjcExOlRoZPA+JB7+FWjcKGsR5jDIBLCu2mdXPtTn\nrdj+JtCzZL3AljF3E+8nsu7B8D6KDkwOXdtAM2hnTlYrsU/2D9J3UCKgRkY6\nKdrvg5O4NiG/6VAAK4wxwXXgIbmt7DED2XTgch6ngAP84zDkr+90kaa3jZvq\nxK3XuC1y5hgakejl5iSpdKAzckEzwTg0rb/VeB9zHGisS/hPIB1zAgVWT6Q8\nk0EYKgS7nJJD9uZhjym3VaDbCYSoqoyiXpiQglb9zZZ6wlXWCEHQ/kj7trz2\nUzsDAdSC2cVG1NMh0SbQd30W+W3JJ22nPI1tRIaD+tIflWbt9YHLaiaB2rnK\nokPJVQxBuP30K15OpQC4mqopFrWGCTsBlSWAgtxyVLgB75wfY7xpZ69yzh8C\nsrSkEvjCViUgmy1lET63+P+8+e/6X9YouGGIly1LTIALTjv24tt95mC4jYMK\npCvhl7ag1aEzzhdwixtA/cK/O0D57gprTXEsW3VjSxVcMk9WVXegSIDdkIFZ\ngr2ZA+Vo3OAlCDF4f2FZ9n5+E7f0pDO6obMe5RnFFlcePMV3QSQ7JTdL1H2U\nY2K9HJE8iLUt6zqHclm8+NwrBB7Y2fyfUCiDN03dLzLqqG4+MMShlImww5mN\nCk5h\r\n=PtpG\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIA0tz2xAT9gQ7oQayn66mLu+unctESrv4x3Y2q9kXbdvAiBUOwa0Me59OIEq+Np9i8rxm2JmPX40ICRDs1nNXhFeOQ=="}]},"_npmUser":{"name":"bentoprojectbot","email":"bentobot@amp.dev"},"directories":{},"maintainers":[{"name":"bentoprojectbot","email":"bentobot@amp.dev"},{"name":"kristoferbaxter","email":"kbax@me.com"},{"name":"esth","email":"esther@amp.dev"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/date-display_1.2112080230.0_1638969691859_0.3628403677073275"},"_hasShrinkwrap":false},"1.2112080230.1":{"name":"@bentoproject/date-display","version":"1.2112080230.1","description":"Displays time data that you can render in your page.","author":{"name":"Bento Authors"},"license":"Apache-2.0","main":"./dist/web-component.js","module":"./dist/web-component.module.js","exports":{".":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./web-component":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./preact":{"import":"./dist/component-preact.module.js","require":"./dist/component-preact.js"},"./react":{"import":"./dist/component-react.module.js","require":"./dist/component-react.js"}},"repository":{"type":"git","url":"git+https://github.com/ampproject/amphtml.git","directory":"extensions/amp-date-display/1.0"},"homepage":"https://github.com/ampproject/amphtml/tree/main/extensions/amp-date-display/1.0","peerDependencies":{"preact":"^10.2.1","react":"^17.0.0"},"gitHead":"6268ef31f81697778937a9d77d4ccda3a561f39f","bugs":{"url":"https://github.com/ampproject/amphtml/issues"},"_id":"@bentoproject/date-display@1.2112080230.1","_nodeVersion":"16.13.0","_npmVersion":"8.1.0","dist":{"integrity":"sha512-B1P8UYru8/3z2h6vFpOcTsTVEJNObuvajBfInXRDc+sL7wzbRQiCrIIFJe/JXmIeOWLuH+FeOTKx1+wUdBBjkg==","shasum":"1fc45fa4219a5d185b470e4fe7ca81329d2048c5","tarball":"https://registry.npmjs.org/@bentoproject/date-display/-/date-display-1.2112080230.1.tgz","fileCount":27,"unpackedSize":1884017,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhsNXyCRA9TVsSAnZWagAAw18P/04/1gNz/3wYphhC9liv\nfGlrtjPIRziDZ5tp+DCfDNxe+1nHWICotUDkK2Auo7xPKKwMwtwoUZOxgiIk\nj5LYmwNV+/it/w1kuOU8GEVsWGsDVidMYlI84yaBsBnxBJKT0Jouyu/OeEOb\nbTDe+7YY6cnyufhHZRwdUGAb68gOc36HoBTijgnsuA0gAJwtYsf2+X7rVepy\n/1rnCapqC4SSIJM3VxE0/MfG54gC3dT94B1B6FnWz+e1WLKyuiTI18Dx1JlF\nA4Zbqb80ASjv2tHwwc5YmnacThlI0wc+GZlQNq48aD7wu+uWdWSyQSpXoj38\nflYYDQ9lLhtNcYgx26BJMGNeV9losxMIwW69fy3NNP/lO+HdzFOWW1mmO0+w\njCo71CaEWhiQJPYHW4+Jk1eaCTg/v2J2B2oWHL5BF/IASvVF5H1HvGVUkLKe\nq5d8JdD7kf6886vyMVevtqEDtfIhBzFsVTT+PbYMWrQZ8hHuJ9wblfDxC+Be\nZURTYXOXrFiBazAIxsGudBFOFilWLgdzvqDLdyVeBRxFAl7GWzu50TbAVINz\nwvVtATzrgkw/sjTrhzfyA91yCFp/QGAzCefCGrLc81h6s9XfaafNPd6X8SUR\nbhsrP4Sc0sfsjGSh22KarbHqmZ3hf/mZ7cT7un0Hlc+O2MgLSxZD5xOa5m6q\nuMqp\r\n=SaDj\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIFfA5qfhjlLx4O5KLJd7BigWiZI6ODKvdj6Bjrk+gJUYAiBJ67BiQyOMsnPwMb3lblj5n1cPqtLPD1S37HosL/XcWw=="}]},"_npmUser":{"name":"bentoprojectbot","email":"bentobot@amp.dev"},"directories":{},"maintainers":[{"name":"bentoprojectbot","email":"bentobot@amp.dev"},{"name":"kristoferbaxter","email":"kbax@me.com"},{"name":"esth","email":"esther@amp.dev"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/date-display_1.2112080230.1_1638979058648_0.09534917499018869"},"_hasShrinkwrap":false},"1.2112082232.0":{"name":"@bentoproject/date-display","version":"1.2112082232.0","description":"Displays time data that you can render in your page.","author":{"name":"Bento Authors"},"license":"Apache-2.0","main":"./dist/web-component.js","module":"./dist/web-component.module.js","exports":{".":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./web-component":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./preact":{"import":"./dist/component-preact.module.js","require":"./dist/component-preact.js"},"./react":{"import":"./dist/component-react.module.js","require":"./dist/component-react.js"}},"repository":{"type":"git","url":"git+https://github.com/ampproject/amphtml.git","directory":"extensions/amp-date-display/1.0"},"homepage":"https://github.com/ampproject/amphtml/tree/main/extensions/amp-date-display/1.0","peerDependencies":{"preact":"^10.2.1","react":"^17.0.0"},"readme":"# Bento Date Display\n\nDisplays time data that you can render in your page. By providing specific [attributes](#attributes) in the Bento Date Display tag, the Bento Date Display extension returns a list of time parameters, which you can pass to [an amp-mustache template](../../amp-mustache/amp-mustache.md) for rendering. Refer to the [list below for each returned time parameter](#returned-time-parameters).\n\n## Web Component\n\nWe don't support the web component version of `bento-date-display` since `<template>` support is still being designed. This effort can be tracked in this [issue](https://go.amp.dev/issue/36619).\n\n<!--\nAn older version of this file contains the removed section, though it's incorrect:\n\nhttps://github.com/ampproject/amphtml/blob/422d171e87571c4d125a2bf956e78e92444c10e8/extensions/amp-date-display/1.0/README.md\n-->\n\n---\n\n## Preact/React Component\n\n### Import via npm\n\n```sh\nnpm install @bentoproject/date-display\n```\n\n```javascript\nimport React from 'react';\nimport {BentoDateDisplay} from '@bentoproject/date-display/react';\nimport '@bentoproject/date-display/styles.css';\n\nfunction App() {\n  return (\n    <BentoDateDisplay\n      datetime={dateTime}\n      displayIn={displayIn}\n      locale={locale}\n      render={(date) => (\n        <div>{`ISO: ${date.iso}; locale: ${date.localeString}`}</div>\n      )}\n    />\n  );\n}\n```\n\n### Interactivity and API usage\n\nThe Bento Date Display component does not have an imperative API. However, the Bento Date Display Preact/React component does accept a `render` prop that renders the consumer's template. This `render` prop should be a function which the Bento Date Display Preact/React component can use to render its template. The `render` callback will be provided a variety of date-related parameters for consumers to interpolate in the rendered template. See the [`render` prop section](#render) for more information.\n\n### Layout and style\n\nThe Bento Date Display Preact/React component allows consumers to render their own templates. These templates may use inline styles, `<style>` tags, Preact/React components that import their own stylesheets.\n\n### Props\n\n#### `datetime`\n\nRequired prop. Denotes the date and time as a Date, String, or Nuumber. If String, must be a standard ISO 8601 date string (e.g. 2017-08-02T15:05:05.000Z) or the string `now`. If set to `now`, it will use the time the page loaded to render its template. If Number, must be a POSIX epoch value in milliseconds.\n\n#### `displayIn`\n\nOptional prop that can be either `\"utc\"` or `\"local\"` and defaults to `\"local\"`. This prop indicates what timezone to display the date in. If set to the value `\"utc\"`, the component will convert the given date to UTC.\n\n#### `locale`\n\nAn internationalization language string for each timer unit. The default value is `en` (for English). This prop supports all values that are supported by the user's browser.\n\n#### `localeOptions`\n\nThe `localeOptions` object supports all the options under [Intl.DateTimeFormat.options](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/DateTimeFormat#parameters) parameter that specifies the formatting style to use for `localeString` format.\n\nNote that if the `displayIn` prop is set to `utc`, the value of `localeOptions.timeZone` will automatically be converted to `UTC`.\n\n#### `render`\n\nOptional callback that should render a template. The callback will be provided an object with properties/values related to the date expressed in `datetime`.\n\nBy default, the Bento Date Display component will display the [`localeString` form of the Date](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/toLocaleString) for the given locale and localeOption. See the [Returned Time Parameters section](#returned-time-parameters) for more details on how each property will be displayed.\n\n```typescript\n(dateParams: DateParams) => JSXInternal.Element\ninterface DateParams {\n  day: number;\n  dayName: string;\n  dayNameShort: string;\n  dayPeriod: string;\n  dayTwoDigit: string;\n  hour: number;\n  hour12: number;\n  hour12TwoDigit: string;\n  hourTwoDigit: string;\n  iso: string;\n  localeString: string;\n  minute: number;\n  minuteTwoDigit: string;\n  month: number;\n  monthName: string;\n  monthNameShort: string;\n  monthTwoDigit: string;\n  second: number;\n  secondTwoDigit: string;\n  timeZoneName: string;\n  timeZoneNameShort: string;\n  year: number;\n  yearTwoDi: string;\n}\n```\n\n### Returned Time Parameters\n\nThis table lists the format you can specify in your Mustache template:\n\n| Format            | Meaning                                                       |\n| ----------------- | ------------------------------------------------------------- |\n| day               | 1, 2, ...12, 13, etc.                                         |\n| dayName           | string,                                                       |\n| dayNameShort      | string,                                                       |\n| dayPeriod         | string,                                                       |\n| dayTwoDigit       | 01, 02, 03, ..., 12, 13, etc.                                 |\n| hour              | 0, 1, 2, 3, ..., 12, 13, ..., 22, 23                          |\n| hour12            | 1, 2, 3, ..., 12, 1, 2, ..., 11, 12                           |\n| hour12TwoDigit    | 01, 02, ..., 12, 01, 02, ..., 11, 12                          |\n| hourTwoDigit      | 00, 01, 02, ..., 12, 13, ..., 22, 23                          |\n| iso               | A standard ISO8601 date string e.g. 2019-01-23T15:31:21.213Z, |\n| localeString      | A string with a language sensitive representation.            |\n| minute            | 0, 1, 2, ..., 58, 59                                          |\n| minuteTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| month             | 1, 2, 3, ..., 12                                              |\n| monthName         | Internationalized month name string.                          |\n| monthNameShort    | Internationalized abbreviated month name string.,             |\n| monthTwoDigit     | 01, 02, ..., 11, 12                                           |\n| second            | 0, 1, 2, ..., 58, 59                                          |\n| secondTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| timeZoneName      | Internationalized timezone, like `Pacific Daylight Time`      |\n| timeZoneNameShort | Internationalized timezone, abbreviated, like `PST`           |\n| year              | 0, 1, 2, ..., 1999, 2000, 2001, etc.                          |\n| yearTwoDigit      | 00, 01, 02, ..., 17, 18, 19, ..., 98, 99                      |\n","readmeFilename":"README.md","gitHead":"b7b1a9f9f7f0773645f4fbcb9a550233900046a0","bugs":{"url":"https://github.com/ampproject/amphtml/issues"},"_id":"@bentoproject/date-display@1.2112082232.0","_nodeVersion":"16.13.0","_npmVersion":"8.1.0","dist":{"integrity":"sha512-fPSsKZG3JNKKC1kIZ0XoZSJDrKHNaANr17t4h2jZ8wwZOqm+xGeViUeizBv/2wTljU8UMUmIo+5KN+rKen/sag==","shasum":"ab262fd04d6fcc9dde9b0dfa8914dd1ea6ac603f","tarball":"https://registry.npmjs.org/@bentoproject/date-display/-/date-display-1.2112082232.0.tgz","fileCount":27,"unpackedSize":1884017,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhsfpZCRA9TVsSAnZWagAARZAQAJ/+0MwNfxtbPjUusHgY\n3NrznJ6SS4SUVEjWoO9edI5Nnji5R2gkmygmUPx3T3UKhh+iPx5xctFjjfaK\n84wM+1sj1bC6ueM/zwHxE/kEqSyhkrIx3imW+VsshTCFfjyHFsKCzkmnatMA\nV3/PkyVTpri2gIyfIBGnxzBw7OUILG39u02pNsoQ4jnw7H5BaIR9mdtRUOVH\nPmH3e8/0FsYnRzLOnVPyClkH8IBZoo6oZWwG8CeF4sbmhHOCj/U6hy9J4Zjg\n21/LbcyxbzN/uGyArEqKi2MJklWR573dPRmE2YBd8puPJmcqxFiP+p2DEHz7\nysMgR9mXyxcWP6gMLzIim2cNa/AGX6XkIeG1oh+eRIE97GQkzy1d77hYJkVj\n0uVeAg2Vm0gjrZSFXGmdZwdvm8psYltV+v6iiPB8Trp1Dy7rYkcRl5q9b3Zi\n2Rq65eNPNuGbX+AbD6uwX7q59nZvzALYtmYw0AxGlPt/kGxuosP0whtXZtmH\nCOxSqsQ6e2gKKvtG1OZxBApZLRZflKW+88L5r4tkPiN0Xvt7if4gbjCwoUIz\nI/p5Reg0l+RIwVk0A5lDFAAuBB2LOL+snDAN6NjGVTj8rGtw5Nf12wSFiPgC\ncUm+QVhNYGterwXQqEYDJuv4rGbacRWro2h98/0aG45an1hks5qceACUGWD2\nJJvr\r\n=VrBB\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIEsOPyyahIuVwSLsCmOwB4NOqKxjhsLOFK4NNW6d4ww+AiEAln0EMq7xjJ+lIpRWDj4+hykcphbPvU1bPQVthb0YJSc="}]},"_npmUser":{"name":"bentoprojectbot","email":"bentobot@amp.dev"},"directories":{},"maintainers":[{"name":"bentoprojectbot","email":"bentobot@amp.dev"},{"name":"kristoferbaxter","email":"kbax@me.com"},{"name":"esth","email":"esther@amp.dev"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/date-display_1.2112082232.0_1639053913684_0.532736992766059"},"_hasShrinkwrap":false},"1.2111242025.1":{"name":"@bentoproject/date-display","version":"1.2111242025.1","description":"Displays time data that you can render in your page.","author":{"name":"Bento Authors"},"license":"Apache-2.0","main":"./dist/web-component.js","module":"./dist/web-component.module.js","exports":{".":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./web-component":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./preact":{"import":"./dist/component-preact.module.js","require":"./dist/component-preact.js"},"./react":{"import":"./dist/component-react.module.js","require":"./dist/component-react.js"}},"repository":{"type":"git","url":"git+https://github.com/ampproject/amphtml.git","directory":"extensions/amp-date-display/1.0"},"homepage":"https://github.com/ampproject/amphtml/tree/main/extensions/amp-date-display/1.0","peerDependencies":{"preact":"^10.2.1","react":"^17.0.0"},"gitHead":"b65dbd2c132f8cee302c477f3a52cb864a79663a","bugs":{"url":"https://github.com/ampproject/amphtml/issues"},"_id":"@bentoproject/date-display@1.2111242025.1","_nodeVersion":"16.13.0","_npmVersion":"8.1.0","dist":{"integrity":"sha512-l14ELfWx8McM6fthcKWiz9ZbbLex+R+iVhmA1mkx+SBQ47yo/LNQOVKbsWr26dEC2Fq3IasLzgxrOojd+iNQmw==","shasum":"5f6a077e523496a9cdef3d3363240cc851d3ae74","tarball":"https://registry.npmjs.org/@bentoproject/date-display/-/date-display-1.2111242025.1.tgz","fileCount":27,"unpackedSize":1856682,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhspsvCRA9TVsSAnZWagAAJ0IP/1yr+SC6FuyMHUxrUC7u\nUGlsgqZEKP103YAGtbU3ZiMeZWIYs9ANU6ezWyV3mI8gwx9th+1hzTwLhkug\n0JPNxXR+WpHH7YvOD8tA7RHkXjsN9Ahj1snWLS8uHj+FczQAkae8GDxFDppV\no3BICWHrkkphyLe1F1tytB/2JTwWLe95h+5E1gwLHyIbfTpjHVa2emHYGnbC\n4DcKVkEZMZsm5ix4zXi4A/nqTGdSZbv9F5Ior1uk42ruLWoQzsbacH6E6Ivy\nra/Te9BHGc4CgDJ4yV96sCz/E0SrT2S4eiCeCMh9xe4HXOwxoN3raPG3S7ID\nv7clkWBuZhGe3YcFh1tcxtvqjDjnzyM3DEFVmNjZUY2sIw3enhfAx6fJggqq\n0H07lF97+93qotuS5YPNCAf16wtvq27Ovw+sNe8ToZ1TwSbTIqqnKBbaKTK0\nI5mvggQkZgt+JHbskUeyYrf/rkpJtOdvp81BNSPxuAmTZs/tKcCvJVKZZPF9\nmJFL+CibrS5IsRhfGNKSCij4iSYxaHL7xLHZ65q1VBzlf53Gv3fQg0YM8+iB\ngIalsHgKASj47UfiObWpL8C7jjxjdROcbApBrVQCzv050thZXku9Babr/KNW\nyTqvt2G2N3T/FH2MiaUvEIWY16KTkppqila6RENL4GFWEHfL9aQJ5MX+5VqY\n7xxA\r\n=RSix\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDPNpz+iNv/S2SIr8Lk+HE9gubeS22yq2y99tFL8Nmi5AIhANpzFI9SNGHo1bDS2fO9OfPiY7U9ND25PUTcZs+fjDNz"}]},"_npmUser":{"name":"bentoprojectbot","email":"bentobot@amp.dev"},"directories":{},"maintainers":[{"name":"bentoprojectbot","email":"bentobot@amp.dev"},{"name":"kristoferbaxter","email":"kbax@me.com"},{"name":"esth","email":"esther@amp.dev"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/date-display_1.2111242025.1_1639095087107_0.2583105543522224"},"_hasShrinkwrap":false},"1.2112091956.0":{"name":"@bentoproject/date-display","version":"1.2112091956.0","description":"Displays time data that you can render in your page.","author":{"name":"Bento Authors"},"license":"Apache-2.0","main":"./dist/web-component.js","module":"./dist/web-component.module.js","exports":{".":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./web-component":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./preact":{"import":"./dist/component-preact.module.js","require":"./dist/component-preact.js"},"./react":{"import":"./dist/component-react.module.js","require":"./dist/component-react.js"}},"repository":{"type":"git","url":"git+https://github.com/ampproject/amphtml.git","directory":"extensions/amp-date-display/1.0"},"homepage":"https://github.com/ampproject/amphtml/tree/main/extensions/amp-date-display/1.0","peerDependencies":{"preact":"^10.2.1","react":"^17.0.0"},"readme":"# Bento Date Display\n\nDisplays time data that you can render in your page. By providing specific [attributes](#attributes) in the Bento Date Display tag, the Bento Date Display extension returns a list of time parameters, which you can pass to [an amp-mustache template](../../amp-mustache/amp-mustache.md) for rendering. Refer to the [list below for each returned time parameter](#returned-time-parameters).\n\n## Web Component\n\nWe don't support the web component version of `bento-date-display` since `<template>` support is still being designed. This effort can be tracked in this [issue](https://go.amp.dev/issue/36619).\n\n<!--\nAn older version of this file contains the removed section, though it's incorrect:\n\nhttps://github.com/ampproject/amphtml/blob/422d171e87571c4d125a2bf956e78e92444c10e8/extensions/amp-date-display/1.0/README.md\n-->\n\n---\n\n## Preact/React Component\n\n### Import via npm\n\n```sh\nnpm install @bentoproject/date-display\n```\n\n```javascript\nimport React from 'react';\nimport {BentoDateDisplay} from '@bentoproject/date-display/react';\nimport '@bentoproject/date-display/styles.css';\n\nfunction App() {\n  return (\n    <BentoDateDisplay\n      datetime={dateTime}\n      displayIn={displayIn}\n      locale={locale}\n      render={(date) => (\n        <div>{`ISO: ${date.iso}; locale: ${date.localeString}`}</div>\n      )}\n    />\n  );\n}\n```\n\n### Interactivity and API usage\n\nThe Bento Date Display component does not have an imperative API. However, the Bento Date Display Preact/React component does accept a `render` prop that renders the consumer's template. This `render` prop should be a function which the Bento Date Display Preact/React component can use to render its template. The `render` callback will be provided a variety of date-related parameters for consumers to interpolate in the rendered template. See the [`render` prop section](#render) for more information.\n\n### Layout and style\n\nThe Bento Date Display Preact/React component allows consumers to render their own templates. These templates may use inline styles, `<style>` tags, Preact/React components that import their own stylesheets.\n\n### Props\n\n#### `datetime`\n\nRequired prop. Denotes the date and time as a Date, String, or Nuumber. If String, must be a standard ISO 8601 date string (e.g. 2017-08-02T15:05:05.000Z) or the string `now`. If set to `now`, it will use the time the page loaded to render its template. If Number, must be a POSIX epoch value in milliseconds.\n\n#### `displayIn`\n\nOptional prop that can be either `\"utc\"` or `\"local\"` and defaults to `\"local\"`. This prop indicates what timezone to display the date in. If set to the value `\"utc\"`, the component will convert the given date to UTC.\n\n#### `locale`\n\nAn internationalization language string for each timer unit. The default value is `en` (for English). This prop supports all values that are supported by the user's browser.\n\n#### `localeOptions`\n\nThe `localeOptions` object supports all the options under [Intl.DateTimeFormat.options](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/DateTimeFormat#parameters) parameter that specifies the formatting style to use for `localeString` format.\n\nNote that if the `displayIn` prop is set to `utc`, the value of `localeOptions.timeZone` will automatically be converted to `UTC`.\n\n#### `render`\n\nOptional callback that should render a template. The callback will be provided an object with properties/values related to the date expressed in `datetime`.\n\nBy default, the Bento Date Display component will display the [`localeString` form of the Date](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/toLocaleString) for the given locale and localeOption. See the [Returned Time Parameters section](#returned-time-parameters) for more details on how each property will be displayed.\n\n```typescript\n(dateParams: DateParams) => JSXInternal.Element\ninterface DateParams {\n  day: number;\n  dayName: string;\n  dayNameShort: string;\n  dayPeriod: string;\n  dayTwoDigit: string;\n  hour: number;\n  hour12: number;\n  hour12TwoDigit: string;\n  hourTwoDigit: string;\n  iso: string;\n  localeString: string;\n  minute: number;\n  minuteTwoDigit: string;\n  month: number;\n  monthName: string;\n  monthNameShort: string;\n  monthTwoDigit: string;\n  second: number;\n  secondTwoDigit: string;\n  timeZoneName: string;\n  timeZoneNameShort: string;\n  year: number;\n  yearTwoDi: string;\n}\n```\n\n### Returned Time Parameters\n\nThis table lists the format you can specify in your Mustache template:\n\n| Format            | Meaning                                                       |\n| ----------------- | ------------------------------------------------------------- |\n| day               | 1, 2, ...12, 13, etc.                                         |\n| dayName           | string,                                                       |\n| dayNameShort      | string,                                                       |\n| dayPeriod         | string,                                                       |\n| dayTwoDigit       | 01, 02, 03, ..., 12, 13, etc.                                 |\n| hour              | 0, 1, 2, 3, ..., 12, 13, ..., 22, 23                          |\n| hour12            | 1, 2, 3, ..., 12, 1, 2, ..., 11, 12                           |\n| hour12TwoDigit    | 01, 02, ..., 12, 01, 02, ..., 11, 12                          |\n| hourTwoDigit      | 00, 01, 02, ..., 12, 13, ..., 22, 23                          |\n| iso               | A standard ISO8601 date string e.g. 2019-01-23T15:31:21.213Z, |\n| localeString      | A string with a language sensitive representation.            |\n| minute            | 0, 1, 2, ..., 58, 59                                          |\n| minuteTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| month             | 1, 2, 3, ..., 12                                              |\n| monthName         | Internationalized month name string.                          |\n| monthNameShort    | Internationalized abbreviated month name string.,             |\n| monthTwoDigit     | 01, 02, ..., 11, 12                                           |\n| second            | 0, 1, 2, ..., 58, 59                                          |\n| secondTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| timeZoneName      | Internationalized timezone, like `Pacific Daylight Time`      |\n| timeZoneNameShort | Internationalized timezone, abbreviated, like `PST`           |\n| year              | 0, 1, 2, ..., 1999, 2000, 2001, etc.                          |\n| yearTwoDigit      | 00, 01, 02, ..., 17, 18, 19, ..., 98, 99                      |\n","readmeFilename":"README.md","gitHead":"b65dbd2c132f8cee302c477f3a52cb864a79663a","bugs":{"url":"https://github.com/ampproject/amphtml/issues"},"_id":"@bentoproject/date-display@1.2112091956.0","_nodeVersion":"16.13.0","_npmVersion":"8.1.0","dist":{"integrity":"sha512-8COeUfR4kpR2t4aSyT18Qmxabk7AzZx3S+FAuB4eFgg8ng3840g+zHGhdwH6I7vLCf+s3nCytWdOPjYgKvetPg==","shasum":"28646d22198900a9b7e01e6a30c8d2f223a9a383","tarball":"https://registry.npmjs.org/@bentoproject/date-display/-/date-display-1.2112091956.0.tgz","fileCount":27,"unpackedSize":1856682,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhs0wJCRA9TVsSAnZWagAAriQP/2Hq3GbdSvJmdMS9v8jj\n+kosUhxj/c90WwI0SxXzalJR3ZBVecBBJK2s707A1oeA3hydkeBveKZm1UKm\nTCncA4IeELnZ9IAXKROMT84fDbFUfiCVjkC6zp1zvcVfOngIOaXVN4pV9TOx\nlO6nLUCK3oZF5YxmUqnarOzLT3e1NkjkjRiUmuolX0VYwHaqolIwMqGI5Vdp\nZ5f/ex0XBW2lMGS5df3V7MCM9wd6XPsIKbsKrySZtSNmfPQrA0tAiZrkosSA\nSNzqYtJ4LkyO54sygBvenUJ/dC91dK8K8arRSZnxrR/gwQx+ahxN/4B5w5IG\njcosc36LaHTolR+KYh7uzHohgI973rb+9sjrR1xwLenYu6Zi71fA5BYY2sK0\nCl+jmAwa+X+/1dMxoj4yKXA1fADLYkuI16xejGn4svBxq5340bg6SEm/xfWw\nSJFKJPqtyVOyvKkIEA7B1PtalTdF/2XgF2REEB3jKjF7oypK+lx5bxs1ddnK\nA/XHEiEgzABsvbF8AIerCUoTb9jz7eU0otpRfYynFuflRrZh17y8/OVIvUpE\nQbpWaykmCV6GwKpcj+0fsLzV/Z1LVvDmQE7RCHD45nAAlh8g9F/bcEGC0bPZ\nIuKZsZuKNp4ZLKkwTRNlDhioOrPakcM/w6xXl2TB1S6cbb7sUjmWeFx/wuqa\nNXxH\r\n=oUBj\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIFhVFS7IjlX4H5OZOvfFNT2IRWzIapq340kdzxgc2Z2AAiEAr/b8eswSA45J9KZcWHFXgnRJalUlx92W3O9BA7ktZ2o="}]},"_npmUser":{"name":"bentoprojectbot","email":"bentobot@amp.dev"},"directories":{},"maintainers":[{"name":"bentoprojectbot","email":"bentobot@amp.dev"},{"name":"kristoferbaxter","email":"kbax@me.com"},{"name":"esth","email":"esther@amp.dev"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/date-display_1.2112091956.0_1639140361488_0.8827907975822291"},"_hasShrinkwrap":false},"1.2112102136.0":{"name":"@bentoproject/date-display","version":"1.2112102136.0","description":"Displays time data that you can render in your page.","author":{"name":"Bento Authors"},"license":"Apache-2.0","main":"./dist/web-component.js","module":"./dist/web-component.module.js","exports":{".":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./web-component":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./preact":{"import":"./dist/component-preact.module.js","require":"./dist/component-preact.js"},"./react":{"import":"./dist/component-react.module.js","require":"./dist/component-react.js"}},"repository":{"type":"git","url":"git+https://github.com/ampproject/amphtml.git","directory":"extensions/amp-date-display/1.0"},"homepage":"https://github.com/ampproject/amphtml/tree/main/extensions/amp-date-display/1.0","peerDependencies":{"preact":"^10.2.1","react":"^17.0.0"},"readme":"# Bento Date Display\n\nDisplays time data that you can render in your page. By providing specific [attributes](#attributes) in the Bento Date Display tag, the Bento Date Display extension returns a list of time parameters, which you can pass to [an amp-mustache template](../../amp-mustache/amp-mustache.md) for rendering. Refer to the [list below for each returned time parameter](#returned-time-parameters).\n\n## Web Component\n\nWe don't support the web component version of `bento-date-display` since `<template>` support is still being designed. This effort can be tracked in this [issue](https://go.amp.dev/issue/36619).\n\n<!--\nAn older version of this file contains the removed section, though it's incorrect:\n\nhttps://github.com/ampproject/amphtml/blob/422d171e87571c4d125a2bf956e78e92444c10e8/extensions/amp-date-display/1.0/README.md\n-->\n\n---\n\n## Preact/React Component\n\n### Import via npm\n\n```sh\nnpm install @bentoproject/date-display\n```\n\n```javascript\nimport React from 'react';\nimport {BentoDateDisplay} from '@bentoproject/date-display/react';\nimport '@bentoproject/date-display/styles.css';\n\nfunction App() {\n  return (\n    <BentoDateDisplay\n      datetime={dateTime}\n      displayIn={displayIn}\n      locale={locale}\n      render={(date) => (\n        <div>{`ISO: ${date.iso}; locale: ${date.localeString}`}</div>\n      )}\n    />\n  );\n}\n```\n\n### Interactivity and API usage\n\nThe Bento Date Display component does not have an imperative API. However, the Bento Date Display Preact/React component does accept a `render` prop that renders the consumer's template. This `render` prop should be a function which the Bento Date Display Preact/React component can use to render its template. The `render` callback will be provided a variety of date-related parameters for consumers to interpolate in the rendered template. See the [`render` prop section](#render) for more information.\n\n### Layout and style\n\nThe Bento Date Display Preact/React component allows consumers to render their own templates. These templates may use inline styles, `<style>` tags, Preact/React components that import their own stylesheets.\n\n### Props\n\n#### `datetime`\n\nRequired prop. Denotes the date and time as a Date, String, or Nuumber. If String, must be a standard ISO 8601 date string (e.g. 2017-08-02T15:05:05.000Z) or the string `now`. If set to `now`, it will use the time the page loaded to render its template. If Number, must be a POSIX epoch value in milliseconds.\n\n#### `displayIn`\n\nOptional prop that can be either `\"utc\"` or `\"local\"` and defaults to `\"local\"`. This prop indicates what timezone to display the date in. If set to the value `\"utc\"`, the component will convert the given date to UTC.\n\n#### `locale`\n\nAn internationalization language string for each timer unit. The default value is `en` (for English). This prop supports all values that are supported by the user's browser.\n\n#### `localeOptions`\n\nThe `localeOptions` object supports all the options under [Intl.DateTimeFormat.options](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/DateTimeFormat#parameters) parameter that specifies the formatting style to use for `localeString` format.\n\nNote that if the `displayIn` prop is set to `utc`, the value of `localeOptions.timeZone` will automatically be converted to `UTC`.\n\n#### `render`\n\nOptional callback that should render a template. The callback will be provided an object with properties/values related to the date expressed in `datetime`.\n\nBy default, the Bento Date Display component will display the [`localeString` form of the Date](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/toLocaleString) for the given locale and localeOption. See the [Returned Time Parameters section](#returned-time-parameters) for more details on how each property will be displayed.\n\n```typescript\n(dateParams: DateParams) => JSXInternal.Element\ninterface DateParams {\n  day: number;\n  dayName: string;\n  dayNameShort: string;\n  dayPeriod: string;\n  dayTwoDigit: string;\n  hour: number;\n  hour12: number;\n  hour12TwoDigit: string;\n  hourTwoDigit: string;\n  iso: string;\n  localeString: string;\n  minute: number;\n  minuteTwoDigit: string;\n  month: number;\n  monthName: string;\n  monthNameShort: string;\n  monthTwoDigit: string;\n  second: number;\n  secondTwoDigit: string;\n  timeZoneName: string;\n  timeZoneNameShort: string;\n  year: number;\n  yearTwoDi: string;\n}\n```\n\n### Returned Time Parameters\n\nThis table lists the format you can specify in your Mustache template:\n\n| Format            | Meaning                                                       |\n| ----------------- | ------------------------------------------------------------- |\n| day               | 1, 2, ...12, 13, etc.                                         |\n| dayName           | string,                                                       |\n| dayNameShort      | string,                                                       |\n| dayPeriod         | string,                                                       |\n| dayTwoDigit       | 01, 02, 03, ..., 12, 13, etc.                                 |\n| hour              | 0, 1, 2, 3, ..., 12, 13, ..., 22, 23                          |\n| hour12            | 1, 2, 3, ..., 12, 1, 2, ..., 11, 12                           |\n| hour12TwoDigit    | 01, 02, ..., 12, 01, 02, ..., 11, 12                          |\n| hourTwoDigit      | 00, 01, 02, ..., 12, 13, ..., 22, 23                          |\n| iso               | A standard ISO8601 date string e.g. 2019-01-23T15:31:21.213Z, |\n| localeString      | A string with a language sensitive representation.            |\n| minute            | 0, 1, 2, ..., 58, 59                                          |\n| minuteTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| month             | 1, 2, 3, ..., 12                                              |\n| monthName         | Internationalized month name string.                          |\n| monthNameShort    | Internationalized abbreviated month name string.,             |\n| monthTwoDigit     | 01, 02, ..., 11, 12                                           |\n| second            | 0, 1, 2, ..., 58, 59                                          |\n| secondTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| timeZoneName      | Internationalized timezone, like `Pacific Daylight Time`      |\n| timeZoneNameShort | Internationalized timezone, abbreviated, like `PST`           |\n| year              | 0, 1, 2, ..., 1999, 2000, 2001, etc.                          |\n| yearTwoDigit      | 00, 01, 02, ..., 17, 18, 19, ..., 98, 99                      |\n","readmeFilename":"README.md","gitHead":"07236921f8e25ede71217e1921f8aac93c30ab6b","bugs":{"url":"https://github.com/ampproject/amphtml/issues"},"_id":"@bentoproject/date-display@1.2112102136.0","_nodeVersion":"16.13.0","_npmVersion":"8.1.0","dist":{"integrity":"sha512-TFsv6gqkPBmRQzsiDhcYy5cLQCv/h9sZRb6+EXWSDx0iSS534dRQjhhIuCKhq0xq5f89w1eMs7f4Hupr15JWOw==","shasum":"b1a27f4ce23a4e194eadf2ebe3ab5cf21edd3c5c","tarball":"https://registry.npmjs.org/@bentoproject/date-display/-/date-display-1.2112102136.0.tgz","fileCount":27,"unpackedSize":1856047,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhtJoQCRA9TVsSAnZWagAAP2sP/27QuDx3142VgC1Q2Rob\nNc9gfDfEMHiI8TJIaaCOGbk1VMdFWifg21D+0S1r5rV6lVhg8mPTBO8zP1Va\nWl3PfvxuV0k99Fvo3wtIve+2vVA54KWr5I3kK6YXeND64x4ofxMyLPwCYsxr\nsRxtPqPeHNEGPLzDFescMsuYu7bP0c25rVEB1pAwwBt2KZhnNu31QbZd4p7B\n6gmI9OBgoGoFgXYpUPqdKynE8jXwPmlrdOHadx81V35/A4TxzwmfN1JMj8jG\nNEMt706AhVF8dfz1QZj3U92pjN0qxhLFo00TQwlTnFrrBO7kR5GesKZzUPgE\nWDTcAahZBO67yczQgU5fmqKOW/RZ1C5Gt9C9oiP1Zeg0GP7zqZ/Id93YuxlI\nHQJb+SmV4okwLAKkBhVoWsguSZT72U7xp3CfwtjCIkQ5XIbpLM5nEM1hHIgX\ngHD65gp103tLrjWzENYeM6spOK3JZPrgFhEqosmM/N9YEhfl7snpos4hn58T\niECc6O07oWYl3Puw1pUMxtjhFXgfkRaQdJH27jEvg4i6htyRyM5c0WbAAGhs\nJw1RzbCzXaQCDzoQK2JZX0o/p54cqoqNvKH1HpSvV78wZBIg0o2/HasispY/\n3uvRXdj3P4QNDbnAkeDhGEh+vTpgRMj1+awcKNySQzCyUb4PM09lfaV7hNP6\nM8Do\r\n=W0E2\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQC0ZjOvdUWLcxkzWAeIwT32jeO3ym9cKNPACwxwZvJyBQIhAIIzLrbzWjCgnHoaMY1A5YVP3UfEg00kjHnX04yZTO8H"}]},"_npmUser":{"name":"bentoprojectbot","email":"bentobot@amp.dev"},"directories":{},"maintainers":[{"name":"bentoprojectbot","email":"bentobot@amp.dev"},{"name":"kristoferbaxter","email":"kbax@me.com"},{"name":"esth","email":"esther@amp.dev"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/date-display_1.2112102136.0_1639225872649_0.020822545050820818"},"_hasShrinkwrap":false},"1.2112132331.0":{"name":"@bentoproject/date-display","version":"1.2112132331.0","description":"Displays time data that you can render in your page.","author":{"name":"Bento Authors"},"license":"Apache-2.0","main":"./dist/web-component.js","module":"./dist/web-component.module.js","exports":{".":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./web-component":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./preact":{"import":"./dist/component-preact.module.js","require":"./dist/component-preact.js"},"./react":{"import":"./dist/component-react.module.js","require":"./dist/component-react.js"}},"repository":{"type":"git","url":"git+https://github.com/ampproject/amphtml.git","directory":"extensions/amp-date-display/1.0"},"homepage":"https://github.com/ampproject/amphtml/tree/main/extensions/amp-date-display/1.0","peerDependencies":{"preact":"^10.2.1","react":"^17.0.0"},"readme":"# Bento Date Display\n\nDisplays time data that you can render in your page. By providing specific [attributes](#attributes) in the Bento Date Display tag, the Bento Date Display extension returns a list of time parameters, which you can pass to [an amp-mustache template](../../amp-mustache/amp-mustache.md) for rendering. Refer to the [list below for each returned time parameter](#returned-time-parameters).\n\n## Web Component\n\nWe don't support the web component version of `bento-date-display` since `<template>` support is still being designed. This effort can be tracked in this [issue](https://go.amp.dev/issue/36619).\n\n<!--\nAn older version of this file contains the removed section, though it's incorrect:\n\nhttps://github.com/ampproject/amphtml/blob/422d171e87571c4d125a2bf956e78e92444c10e8/extensions/amp-date-display/1.0/README.md\n-->\n\n---\n\n## Preact/React Component\n\n### Import via npm\n\n```sh\nnpm install @bentoproject/date-display\n```\n\n```javascript\nimport React from 'react';\nimport {BentoDateDisplay} from '@bentoproject/date-display/react';\nimport '@bentoproject/date-display/styles.css';\n\nfunction App() {\n  return (\n    <BentoDateDisplay\n      datetime={dateTime}\n      displayIn={displayIn}\n      locale={locale}\n      render={(date) => (\n        <div>{`ISO: ${date.iso}; locale: ${date.localeString}`}</div>\n      )}\n    />\n  );\n}\n```\n\n### Interactivity and API usage\n\nThe Bento Date Display component does not have an imperative API. However, the Bento Date Display Preact/React component does accept a `render` prop that renders the consumer's template. This `render` prop should be a function which the Bento Date Display Preact/React component can use to render its template. The `render` callback will be provided a variety of date-related parameters for consumers to interpolate in the rendered template. See the [`render` prop section](#render) for more information.\n\n### Layout and style\n\nThe Bento Date Display Preact/React component allows consumers to render their own templates. These templates may use inline styles, `<style>` tags, Preact/React components that import their own stylesheets.\n\n### Props\n\n#### `datetime`\n\nRequired prop. Denotes the date and time as a Date, String, or Nuumber. If String, must be a standard ISO 8601 date string (e.g. 2017-08-02T15:05:05.000Z) or the string `now`. If set to `now`, it will use the time the page loaded to render its template. If Number, must be a POSIX epoch value in milliseconds.\n\n#### `displayIn`\n\nOptional prop that can be either `\"utc\"` or `\"local\"` and defaults to `\"local\"`. This prop indicates what timezone to display the date in. If set to the value `\"utc\"`, the component will convert the given date to UTC.\n\n#### `locale`\n\nAn internationalization language string for each timer unit. The default value is `en` (for English). This prop supports all values that are supported by the user's browser.\n\n#### `localeOptions`\n\nThe `localeOptions` object supports all the options under [Intl.DateTimeFormat.options](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/DateTimeFormat#parameters) parameter that specifies the formatting style to use for `localeString` format.\n\nNote that if the `displayIn` prop is set to `utc`, the value of `localeOptions.timeZone` will automatically be converted to `UTC`.\n\n#### `render`\n\nOptional callback that should render a template. The callback will be provided an object with properties/values related to the date expressed in `datetime`.\n\nBy default, the Bento Date Display component will display the [`localeString` form of the Date](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/toLocaleString) for the given locale and localeOption. See the [Returned Time Parameters section](#returned-time-parameters) for more details on how each property will be displayed.\n\n```typescript\n(dateParams: DateParams) => JSXInternal.Element\ninterface DateParams {\n  day: number;\n  dayName: string;\n  dayNameShort: string;\n  dayPeriod: string;\n  dayTwoDigit: string;\n  hour: number;\n  hour12: number;\n  hour12TwoDigit: string;\n  hourTwoDigit: string;\n  iso: string;\n  localeString: string;\n  minute: number;\n  minuteTwoDigit: string;\n  month: number;\n  monthName: string;\n  monthNameShort: string;\n  monthTwoDigit: string;\n  second: number;\n  secondTwoDigit: string;\n  timeZoneName: string;\n  timeZoneNameShort: string;\n  year: number;\n  yearTwoDi: string;\n}\n```\n\n### Returned Time Parameters\n\nThis table lists the format you can specify in your Mustache template:\n\n| Format            | Meaning                                                       |\n| ----------------- | ------------------------------------------------------------- |\n| day               | 1, 2, ...12, 13, etc.                                         |\n| dayName           | string,                                                       |\n| dayNameShort      | string,                                                       |\n| dayPeriod         | string,                                                       |\n| dayTwoDigit       | 01, 02, 03, ..., 12, 13, etc.                                 |\n| hour              | 0, 1, 2, 3, ..., 12, 13, ..., 22, 23                          |\n| hour12            | 1, 2, 3, ..., 12, 1, 2, ..., 11, 12                           |\n| hour12TwoDigit    | 01, 02, ..., 12, 01, 02, ..., 11, 12                          |\n| hourTwoDigit      | 00, 01, 02, ..., 12, 13, ..., 22, 23                          |\n| iso               | A standard ISO8601 date string e.g. 2019-01-23T15:31:21.213Z, |\n| localeString      | A string with a language sensitive representation.            |\n| minute            | 0, 1, 2, ..., 58, 59                                          |\n| minuteTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| month             | 1, 2, 3, ..., 12                                              |\n| monthName         | Internationalized month name string.                          |\n| monthNameShort    | Internationalized abbreviated month name string.,             |\n| monthTwoDigit     | 01, 02, ..., 11, 12                                           |\n| second            | 0, 1, 2, ..., 58, 59                                          |\n| secondTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| timeZoneName      | Internationalized timezone, like `Pacific Daylight Time`      |\n| timeZoneNameShort | Internationalized timezone, abbreviated, like `PST`           |\n| year              | 0, 1, 2, ..., 1999, 2000, 2001, etc.                          |\n| yearTwoDigit      | 00, 01, 02, ..., 17, 18, 19, ..., 98, 99                      |\n","readmeFilename":"README.md","gitHead":"cf62ae1d6a12b70dfb6a7bd8ce66ed5bc6e30d1b","bugs":{"url":"https://github.com/ampproject/amphtml/issues"},"_id":"@bentoproject/date-display@1.2112132331.0","_nodeVersion":"16.13.1","_npmVersion":"8.1.2","dist":{"integrity":"sha512-CK2G723Uu/3WIPedC7H4M+M7vAm0fDY1bmNxLNom15SLLioLjV5PC/Dm3l6EAkC7fXvlJsg6/EBFZc1Fgf7W2g==","shasum":"c0eb1ad4d58f04f1f7733b09c1ca0b3b2f820525","tarball":"https://registry.npmjs.org/@bentoproject/date-display/-/date-display-1.2112132331.0.tgz","fileCount":27,"unpackedSize":1853183,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhuJUgCRA9TVsSAnZWagAApPAP/REdD3Fn6vRfaHAqSfUI\nhRwWuShtg7qYB3eHxJLRV1vS2rCv+FzeIcWVSQi4TJ4E1PDs8BT2hfC+CFI8\n3xoI0pYrYhCBc5S2/NDj0iTOa7vdEQVeekfP5epvha4db0297bTkzWApHXe9\nigadeR25e96P+AO24K73VaBItCJUkGvgLrKjWrImliEqgBfELezgtxbsDZfN\nYY3whesCxu3khAzCssIWPzC/AxmpqyL2vmJcJ5FEOrDr+3M9/XA2cKcwpUZy\n1qzxMH4FZOCv7qz8ukDFaOKMaFu+NfIHsCFyuKYxdV9H2WycACV8UwQXnByt\n/phhO+Q9pMSPTKBkj5lMpGP6rq2pZxq2e1fsi4SxWu8zQY78bw5nNUoGzsnr\nQ74JN7Gc7pVTFj9RjlW89YqeEdKHzciov5bhy8rNgZiOOoFxtM+k9ubpwBxg\nb9VeZ+++8OG7g5RErjsiS3ZCLDNfy9lfL2yOurEYSn1G8t/kNyq9ggn09AWu\nWQVuTd5nwG30rNlVyAVCyC14UF4DcBAQaYvQAIkAwR/au/9Wjg3j+bqS+dKV\nNQdbaV/G0lHKbu1BJotaWjIHKZMamuMD/fE7mG7aYeBDpkc8oB6aO4jmGi/2\n9UKNEBZTIw0N+DuaaM+uLXjWb7HRfKCsPi9kfMYDVM9SDASNkqa1T2YrybmT\ntCyf\r\n=mjv2\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIFzB+kXThQ7DC2nfqaPjtTn+SWhIfaGkrnYOG4Ju5Gp5AiBRp4qed16lFTgOL++2UOCaDow003GlFeH+KRoC4o3Jew=="}]},"_npmUser":{"name":"bentoprojectbot","email":"bentobot@amp.dev"},"directories":{},"maintainers":[{"name":"bentoprojectbot","email":"bentobot@amp.dev"},{"name":"kristoferbaxter","email":"kbax@me.com"},{"name":"esth","email":"esther@amp.dev"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/date-display_1.2112132331.0_1639486752016_0.9057660825715654"},"_hasShrinkwrap":false},"1.2112160003.0":{"name":"@bentoproject/date-display","version":"1.2112160003.0","description":"Displays time data that you can render in your page.","author":{"name":"Bento Authors"},"license":"Apache-2.0","main":"./dist/web-component.js","module":"./dist/web-component.module.js","exports":{".":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./web-component":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./preact":{"import":"./dist/component-preact.module.js","require":"./dist/component-preact.js"},"./react":{"import":"./dist/component-react.module.js","require":"./dist/component-react.js"}},"repository":{"type":"git","url":"git+https://github.com/ampproject/amphtml.git","directory":"extensions/amp-date-display/1.0"},"homepage":"https://github.com/ampproject/amphtml/tree/main/extensions/amp-date-display/1.0","peerDependencies":{"preact":"^10.2.1","react":"^17.0.0"},"readme":"# Bento Date Display\n\nDisplays time data that you can render in your page. By providing specific [attributes](#attributes) in the Bento Date Display tag, the Bento Date Display extension returns a list of time parameters, which you can pass to [an amp-mustache template](../../amp-mustache/amp-mustache.md) for rendering. Refer to the [list below for each returned time parameter](#returned-time-parameters).\n\n## Web Component\n\nWe don't support the web component version of `bento-date-display` since `<template>` support is still being designed. This effort can be tracked in this [issue](https://go.amp.dev/issue/36619).\n\n<!--\nAn older version of this file contains the removed section, though it's incorrect:\n\nhttps://github.com/ampproject/amphtml/blob/422d171e87571c4d125a2bf956e78e92444c10e8/extensions/amp-date-display/1.0/README.md\n-->\n\n---\n\n## Preact/React Component\n\n### Import via npm\n\n```sh\nnpm install @bentoproject/date-display\n```\n\n```javascript\nimport React from 'react';\nimport {BentoDateDisplay} from '@bentoproject/date-display/react';\nimport '@bentoproject/date-display/styles.css';\n\nfunction App() {\n  return (\n    <BentoDateDisplay\n      datetime={dateTime}\n      displayIn={displayIn}\n      locale={locale}\n      render={(date) => (\n        <div>{`ISO: ${date.iso}; locale: ${date.localeString}`}</div>\n      )}\n    />\n  );\n}\n```\n\n### Interactivity and API usage\n\nThe Bento Date Display component does not have an imperative API. However, the Bento Date Display Preact/React component does accept a `render` prop that renders the consumer's template. This `render` prop should be a function which the Bento Date Display Preact/React component can use to render its template. The `render` callback will be provided a variety of date-related parameters for consumers to interpolate in the rendered template. See the [`render` prop section](#render) for more information.\n\n### Layout and style\n\nThe Bento Date Display Preact/React component allows consumers to render their own templates. These templates may use inline styles, `<style>` tags, Preact/React components that import their own stylesheets.\n\n### Props\n\n#### `datetime`\n\nRequired prop. Denotes the date and time as a Date, String, or Nuumber. If String, must be a standard ISO 8601 date string (e.g. 2017-08-02T15:05:05.000Z) or the string `now`. If set to `now`, it will use the time the page loaded to render its template. If Number, must be a POSIX epoch value in milliseconds.\n\n#### `displayIn`\n\nOptional prop that can be either `\"utc\"` or `\"local\"` and defaults to `\"local\"`. This prop indicates what timezone to display the date in. If set to the value `\"utc\"`, the component will convert the given date to UTC.\n\n#### `locale`\n\nAn internationalization language string for each timer unit. The default value is `en` (for English). This prop supports all values that are supported by the user's browser.\n\n#### `localeOptions`\n\nThe `localeOptions` object supports all the options under [Intl.DateTimeFormat.options](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/DateTimeFormat#parameters) parameter that specifies the formatting style to use for `localeString` format.\n\nNote that if the `displayIn` prop is set to `utc`, the value of `localeOptions.timeZone` will automatically be converted to `UTC`.\n\n#### `render`\n\nOptional callback that should render a template. The callback will be provided an object with properties/values related to the date expressed in `datetime`.\n\nBy default, the Bento Date Display component will display the [`localeString` form of the Date](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/toLocaleString) for the given locale and localeOption. See the [Returned Time Parameters section](#returned-time-parameters) for more details on how each property will be displayed.\n\n```typescript\n(dateParams: DateParams) => JSXInternal.Element\ninterface DateParams {\n  day: number;\n  dayName: string;\n  dayNameShort: string;\n  dayPeriod: string;\n  dayTwoDigit: string;\n  hour: number;\n  hour12: number;\n  hour12TwoDigit: string;\n  hourTwoDigit: string;\n  iso: string;\n  localeString: string;\n  minute: number;\n  minuteTwoDigit: string;\n  month: number;\n  monthName: string;\n  monthNameShort: string;\n  monthTwoDigit: string;\n  second: number;\n  secondTwoDigit: string;\n  timeZoneName: string;\n  timeZoneNameShort: string;\n  year: number;\n  yearTwoDi: string;\n}\n```\n\n### Returned Time Parameters\n\nThis table lists the format you can specify in your Mustache template:\n\n| Format            | Meaning                                                       |\n| ----------------- | ------------------------------------------------------------- |\n| day               | 1, 2, ...12, 13, etc.                                         |\n| dayName           | string,                                                       |\n| dayNameShort      | string,                                                       |\n| dayPeriod         | string,                                                       |\n| dayTwoDigit       | 01, 02, 03, ..., 12, 13, etc.                                 |\n| hour              | 0, 1, 2, 3, ..., 12, 13, ..., 22, 23                          |\n| hour12            | 1, 2, 3, ..., 12, 1, 2, ..., 11, 12                           |\n| hour12TwoDigit    | 01, 02, ..., 12, 01, 02, ..., 11, 12                          |\n| hourTwoDigit      | 00, 01, 02, ..., 12, 13, ..., 22, 23                          |\n| iso               | A standard ISO8601 date string e.g. 2019-01-23T15:31:21.213Z, |\n| localeString      | A string with a language sensitive representation.            |\n| minute            | 0, 1, 2, ..., 58, 59                                          |\n| minuteTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| month             | 1, 2, 3, ..., 12                                              |\n| monthName         | Internationalized month name string.                          |\n| monthNameShort    | Internationalized abbreviated month name string.,             |\n| monthTwoDigit     | 01, 02, ..., 11, 12                                           |\n| second            | 0, 1, 2, ..., 58, 59                                          |\n| secondTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| timeZoneName      | Internationalized timezone, like `Pacific Daylight Time`      |\n| timeZoneNameShort | Internationalized timezone, abbreviated, like `PST`           |\n| year              | 0, 1, 2, ..., 1999, 2000, 2001, etc.                          |\n| yearTwoDigit      | 00, 01, 02, ..., 17, 18, 19, ..., 98, 99                      |\n","readmeFilename":"README.md","gitHead":"2bfd164830b15f49d7d86cf73821410a039d9039","bugs":{"url":"https://github.com/ampproject/amphtml/issues"},"_id":"@bentoproject/date-display@1.2112160003.0","_nodeVersion":"16.13.1","_npmVersion":"8.1.2","dist":{"integrity":"sha512-bNHzuOT8chDQbpal5jgRuYyTOcqfYS5DTAtUuJ6OIcOUlOGjGZaemj4eo6OZdx91qLRS7ObuISEFf391r5y/Ww==","shasum":"e7fdefb0dd82062a3679d1fb694759c176c95cbf","tarball":"https://registry.npmjs.org/@bentoproject/date-display/-/date-display-1.2112160003.0.tgz","fileCount":27,"unpackedSize":1853183,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhuy7WCRA9TVsSAnZWagAAih8P/04/6/ZRZU3zoxIQgfpD\najiyoKDm3vLse0wHhq0BasZDfbTKfqQmEGFKZW9Jot13+LD2tkfp3llH0NZX\nB4n81TuWVwNciZSEbFURigb0N125OmRhBGjWyOtbnYQXp34V+2IrPlk7hbEE\niuMtayElewk2GYGQto3JEapDajcDZiWZOU+HB0xoxx79gGvFQ2+V/2LM5tX2\nZG6YtMr0/e5YnIPSpfRbTAFlt0d/CY34TOZ7qHycFDfCkzavpF5cobOd70xz\n6yVT3ffDIBZp4XrHChY6jg/cciDre1Wc0lRUZSTzadhn6rfgxx8oBcwcHsvE\nlkP+K6losY39qT7ojf0CZcIMJutHazfeCz5KCPIMxah6pOljurIpDqJp7Jy2\nk+ERpjCh5lAd8EGNQ2mH1xNcTvng8gLUfirkkPbQHAkS0zno3Du+oMog4NBq\ninURMPBC5wPguQWTQxIsD/i8G3VpHWV4rnPSq3+wB5KUWz9BtOu3sVO3do28\nMRgX/1zB4FAa600VxIpXH4UGfr7uGWCBVHgDNC+bHS0OIhr+lgdoXAluqIjx\nsP/mgKfHP9ldOwG6sqZmfDJWOqiACFXvUtsI5UmvCZ2UZPmpCMz0/wKSwR1O\neThxL0VPvUFkRY/3qK/iG8LEexTAAH8ICL2QX3x3n9/G/Vw59s5TDvWNGWgA\n7IwD\r\n=gR63\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCkMZtzs3d+ujSRUpzcwJCobWa0IrCezMtIQehIZpZ23AIgYFJN0TLRSSmKbfGDIKe6vceZAyWA/pY1vJsslDm/LD0="}]},"_npmUser":{"name":"bentoprojectbot","email":"bentobot@amp.dev"},"directories":{},"maintainers":[{"name":"bentoprojectbot","email":"bentobot@amp.dev"},{"name":"kristoferbaxter","email":"kbax@me.com"},{"name":"esth","email":"esther@amp.dev"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/date-display_1.2112160003.0_1639657174460_0.17758520909977893"},"_hasShrinkwrap":false},"1.2112162055.0":{"name":"@bentoproject/date-display","version":"1.2112162055.0","description":"Displays time data that you can render in your page.","author":{"name":"Bento Authors"},"license":"Apache-2.0","main":"./dist/web-component.js","module":"./dist/web-component.module.js","exports":{".":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./web-component":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./preact":{"import":"./dist/component-preact.module.js","require":"./dist/component-preact.js"},"./react":{"import":"./dist/component-react.module.js","require":"./dist/component-react.js"}},"repository":{"type":"git","url":"git+https://github.com/ampproject/amphtml.git","directory":"extensions/amp-date-display/1.0"},"homepage":"https://github.com/ampproject/amphtml/tree/main/extensions/amp-date-display/1.0","peerDependencies":{"preact":"^10.2.1","react":"^17.0.0"},"readme":"# Bento Date Display\n\nDisplays time data that you can render in your page. By providing specific [attributes](#attributes) in the Bento Date Display tag, the Bento Date Display extension returns a list of time parameters, which you can pass to [an amp-mustache template](../../amp-mustache/amp-mustache.md) for rendering. Refer to the [list below for each returned time parameter](#returned-time-parameters).\n\n## Web Component\n\nWe don't support the web component version of `bento-date-display` since `<template>` support is still being designed. This effort can be tracked in this [issue](https://go.amp.dev/issue/36619).\n\n<!--\nAn older version of this file contains the removed section, though it's incorrect:\n\nhttps://github.com/ampproject/amphtml/blob/422d171e87571c4d125a2bf956e78e92444c10e8/extensions/amp-date-display/1.0/README.md\n-->\n\n---\n\n## Preact/React Component\n\n### Import via npm\n\n```sh\nnpm install @bentoproject/date-display\n```\n\n```javascript\nimport React from 'react';\nimport {BentoDateDisplay} from '@bentoproject/date-display/react';\nimport '@bentoproject/date-display/styles.css';\n\nfunction App() {\n  return (\n    <BentoDateDisplay\n      datetime={dateTime}\n      displayIn={displayIn}\n      locale={locale}\n      render={(date) => (\n        <div>{`ISO: ${date.iso}; locale: ${date.localeString}`}</div>\n      )}\n    />\n  );\n}\n```\n\n### Interactivity and API usage\n\nThe Bento Date Display component does not have an imperative API. However, the Bento Date Display Preact/React component does accept a `render` prop that renders the consumer's template. This `render` prop should be a function which the Bento Date Display Preact/React component can use to render its template. The `render` callback will be provided a variety of date-related parameters for consumers to interpolate in the rendered template. See the [`render` prop section](#render) for more information.\n\n### Layout and style\n\nThe Bento Date Display Preact/React component allows consumers to render their own templates. These templates may use inline styles, `<style>` tags, Preact/React components that import their own stylesheets.\n\n### Props\n\n#### `datetime`\n\nRequired prop. Denotes the date and time as a Date, String, or Nuumber. If String, must be a standard ISO 8601 date string (e.g. 2017-08-02T15:05:05.000Z) or the string `now`. If set to `now`, it will use the time the page loaded to render its template. If Number, must be a POSIX epoch value in milliseconds.\n\n#### `displayIn`\n\nOptional prop that can be either `\"utc\"` or `\"local\"` and defaults to `\"local\"`. This prop indicates what timezone to display the date in. If set to the value `\"utc\"`, the component will convert the given date to UTC.\n\n#### `locale`\n\nAn internationalization language string for each timer unit. The default value is `en` (for English). This prop supports all values that are supported by the user's browser.\n\n#### `localeOptions`\n\nThe `localeOptions` object supports all the options under [Intl.DateTimeFormat.options](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/DateTimeFormat#parameters) parameter that specifies the formatting style to use for `localeString` format.\n\nNote that if the `displayIn` prop is set to `utc`, the value of `localeOptions.timeZone` will automatically be converted to `UTC`.\n\n#### `render`\n\nOptional callback that should render a template. The callback will be provided an object with properties/values related to the date expressed in `datetime`.\n\nBy default, the Bento Date Display component will display the [`localeString` form of the Date](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/toLocaleString) for the given locale and localeOption. See the [Returned Time Parameters section](#returned-time-parameters) for more details on how each property will be displayed.\n\n```typescript\n(dateParams: DateParams) => JSXInternal.Element\ninterface DateParams {\n  day: number;\n  dayName: string;\n  dayNameShort: string;\n  dayPeriod: string;\n  dayTwoDigit: string;\n  hour: number;\n  hour12: number;\n  hour12TwoDigit: string;\n  hourTwoDigit: string;\n  iso: string;\n  localeString: string;\n  minute: number;\n  minuteTwoDigit: string;\n  month: number;\n  monthName: string;\n  monthNameShort: string;\n  monthTwoDigit: string;\n  second: number;\n  secondTwoDigit: string;\n  timeZoneName: string;\n  timeZoneNameShort: string;\n  year: number;\n  yearTwoDi: string;\n}\n```\n\n### Returned Time Parameters\n\nThis table lists the format you can specify in your Mustache template:\n\n| Format            | Meaning                                                       |\n| ----------------- | ------------------------------------------------------------- |\n| day               | 1, 2, ...12, 13, etc.                                         |\n| dayName           | string,                                                       |\n| dayNameShort      | string,                                                       |\n| dayPeriod         | string,                                                       |\n| dayTwoDigit       | 01, 02, 03, ..., 12, 13, etc.                                 |\n| hour              | 0, 1, 2, 3, ..., 12, 13, ..., 22, 23                          |\n| hour12            | 1, 2, 3, ..., 12, 1, 2, ..., 11, 12                           |\n| hour12TwoDigit    | 01, 02, ..., 12, 01, 02, ..., 11, 12                          |\n| hourTwoDigit      | 00, 01, 02, ..., 12, 13, ..., 22, 23                          |\n| iso               | A standard ISO8601 date string e.g. 2019-01-23T15:31:21.213Z, |\n| localeString      | A string with a language sensitive representation.            |\n| minute            | 0, 1, 2, ..., 58, 59                                          |\n| minuteTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| month             | 1, 2, 3, ..., 12                                              |\n| monthName         | Internationalized month name string.                          |\n| monthNameShort    | Internationalized abbreviated month name string.,             |\n| monthTwoDigit     | 01, 02, ..., 11, 12                                           |\n| second            | 0, 1, 2, ..., 58, 59                                          |\n| secondTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| timeZoneName      | Internationalized timezone, like `Pacific Daylight Time`      |\n| timeZoneNameShort | Internationalized timezone, abbreviated, like `PST`           |\n| year              | 0, 1, 2, ..., 1999, 2000, 2001, etc.                          |\n| yearTwoDigit      | 00, 01, 02, ..., 17, 18, 19, ..., 98, 99                      |\n","readmeFilename":"README.md","gitHead":"e3242ec094a87348831cbdd342f5187068444994","bugs":{"url":"https://github.com/ampproject/amphtml/issues"},"_id":"@bentoproject/date-display@1.2112162055.0","_nodeVersion":"16.13.1","_npmVersion":"8.1.2","dist":{"integrity":"sha512-8LiAoabwrk4yunhZpW/8U7ul2aijbQLjeAtM+loUjdbiqrvS3OFfAgBL72PAFqJydpKWkvUtxbcTlSkJM4SZHA==","shasum":"c66ee58050f3ddbc2ac863f5009e968953ed41d6","tarball":"https://registry.npmjs.org/@bentoproject/date-display/-/date-display-1.2112162055.0.tgz","fileCount":27,"unpackedSize":1852895,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhvH/dCRA9TVsSAnZWagAAMC4QAI/Yt/Mqz1sm4N1dZGZe\nUmpMQKHHCHMAqz3KTl+WIutPnaTOu3mbmY9osVHJipixmCkbDDyMzrIx8Bln\nwcvYgpqL7RMrLTSlsQYwCVLBcbn+iF1Kun5pH0JjLqlUFZ1H7O5C0uzNMKbV\nogvf8VwTELfJPOTvdVdOKQYuzPGhi+SXHjcZePX1/n7/Fex7fRqsTN9Va5zv\nPPvlFneJ2pQi3aX0VsVVoGuN8zG+NWVHHnm1FOJ8ypVCg8Ax8jxCWJ/rmXRO\nfgZGSlLGwtESYFRvNbDKz8VO8fzw0ZQxDdh6uzZw+a+dy8H7UosdXckLcHYD\nCSlr52LPRAaRUBCo5LjSy8BYTF6il9ZcFsWRkgdh0QGub0fdmudPVTnFN2CW\nFDFSyKg4JsJCuch1mYOLmq8adn2mmDg81Y2dmaAyF9EOQ3JHGw/B/dKVFEsu\nCg9TAupHJQQqSuKGxrRkHJp6nmJ6gtWiQSWJGthDapeSz86mRwemRE+mjFqL\nkprUGqkevRPsaHjoxXH79wIZgF/QRUbCA9WCJmuJuIEWc5G+JD8pfICvHZ/G\nRwLtC1//whFqE+WFF50vxgmvBIFvCv+18dJbnA833LNuxLwjP6PmlpG3wVVJ\nrFO5bCoZlTiMEMDyv5qXkebkWq9HFb0/dLLBcYtj6nKT69NZ29rTXsl/QXvk\nFKP/\r\n=h+Ed\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDvkbheetADCsw38WCDNTFycmgzWQZ17zqVG2KNf33n1gIgRXeq8sCgH2MD82+btAkq0f9qZxU5BwGw5yIHk9Cmneo="}]},"_npmUser":{"name":"bentoprojectbot","email":"bentobot@amp.dev"},"directories":{},"maintainers":[{"name":"bentoprojectbot","email":"bentobot@amp.dev"},{"name":"kristoferbaxter","email":"kbax@me.com"},{"name":"esth","email":"esther@amp.dev"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/date-display_1.2112162055.0_1639743453404_0.29151060781168914"},"_hasShrinkwrap":false},"1.2112170012.0":{"name":"@bentoproject/date-display","version":"1.2112170012.0","description":"Displays time data that you can render in your page.","author":{"name":"Bento Authors"},"license":"Apache-2.0","main":"./dist/web-component.js","module":"./dist/web-component.module.js","exports":{".":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./web-component":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./preact":{"import":"./dist/component-preact.module.js","require":"./dist/component-preact.js"},"./react":{"import":"./dist/component-react.module.js","require":"./dist/component-react.js"}},"repository":{"type":"git","url":"git+https://github.com/ampproject/amphtml.git","directory":"extensions/amp-date-display/1.0"},"homepage":"https://github.com/ampproject/amphtml/tree/main/extensions/amp-date-display/1.0","peerDependencies":{"preact":"^10.2.1","react":"^17.0.0"},"readme":"# Bento Date Display\n\nDisplays time data that you can render in your page. By providing specific [attributes](#attributes) in the Bento Date Display tag, the Bento Date Display extension returns a list of time parameters, which you can pass to [an amp-mustache template](../../amp-mustache/amp-mustache.md) for rendering. Refer to the [list below for each returned time parameter](#returned-time-parameters).\n\n## Web Component\n\nWe don't support the web component version of `bento-date-display` since `<template>` support is still being designed. This effort can be tracked in this [issue](https://go.amp.dev/issue/36619).\n\n<!--\nAn older version of this file contains the removed section, though it's incorrect:\n\nhttps://github.com/ampproject/amphtml/blob/422d171e87571c4d125a2bf956e78e92444c10e8/extensions/amp-date-display/1.0/README.md\n-->\n\n---\n\n## Preact/React Component\n\n### Import via npm\n\n```sh\nnpm install @bentoproject/date-display\n```\n\n```javascript\nimport React from 'react';\nimport {BentoDateDisplay} from '@bentoproject/date-display/react';\nimport '@bentoproject/date-display/styles.css';\n\nfunction App() {\n  return (\n    <BentoDateDisplay\n      datetime={dateTime}\n      displayIn={displayIn}\n      locale={locale}\n      render={(date) => (\n        <div>{`ISO: ${date.iso}; locale: ${date.localeString}`}</div>\n      )}\n    />\n  );\n}\n```\n\n### Interactivity and API usage\n\nThe Bento Date Display component does not have an imperative API. However, the Bento Date Display Preact/React component does accept a `render` prop that renders the consumer's template. This `render` prop should be a function which the Bento Date Display Preact/React component can use to render its template. The `render` callback will be provided a variety of date-related parameters for consumers to interpolate in the rendered template. See the [`render` prop section](#render) for more information.\n\n### Layout and style\n\nThe Bento Date Display Preact/React component allows consumers to render their own templates. These templates may use inline styles, `<style>` tags, Preact/React components that import their own stylesheets.\n\n### Props\n\n#### `datetime`\n\nRequired prop. Denotes the date and time as a Date, String, or Nuumber. If String, must be a standard ISO 8601 date string (e.g. 2017-08-02T15:05:05.000Z) or the string `now`. If set to `now`, it will use the time the page loaded to render its template. If Number, must be a POSIX epoch value in milliseconds.\n\n#### `displayIn`\n\nOptional prop that can be either `\"utc\"` or `\"local\"` and defaults to `\"local\"`. This prop indicates what timezone to display the date in. If set to the value `\"utc\"`, the component will convert the given date to UTC.\n\n#### `locale`\n\nAn internationalization language string for each timer unit. The default value is `en` (for English). This prop supports all values that are supported by the user's browser.\n\n#### `localeOptions`\n\nThe `localeOptions` object supports all the options under [Intl.DateTimeFormat.options](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/DateTimeFormat#parameters) parameter that specifies the formatting style to use for `localeString` format.\n\nNote that if the `displayIn` prop is set to `utc`, the value of `localeOptions.timeZone` will automatically be converted to `UTC`.\n\n#### `render`\n\nOptional callback that should render a template. The callback will be provided an object with properties/values related to the date expressed in `datetime`.\n\nBy default, the Bento Date Display component will display the [`localeString` form of the Date](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/toLocaleString) for the given locale and localeOption. See the [Returned Time Parameters section](#returned-time-parameters) for more details on how each property will be displayed.\n\n```typescript\n(dateParams: DateParams) => JSXInternal.Element\ninterface DateParams {\n  day: number;\n  dayName: string;\n  dayNameShort: string;\n  dayPeriod: string;\n  dayTwoDigit: string;\n  hour: number;\n  hour12: number;\n  hour12TwoDigit: string;\n  hourTwoDigit: string;\n  iso: string;\n  localeString: string;\n  minute: number;\n  minuteTwoDigit: string;\n  month: number;\n  monthName: string;\n  monthNameShort: string;\n  monthTwoDigit: string;\n  second: number;\n  secondTwoDigit: string;\n  timeZoneName: string;\n  timeZoneNameShort: string;\n  year: number;\n  yearTwoDi: string;\n}\n```\n\n### Returned Time Parameters\n\nThis table lists the format you can specify in your Mustache template:\n\n| Format            | Meaning                                                       |\n| ----------------- | ------------------------------------------------------------- |\n| day               | 1, 2, ...12, 13, etc.                                         |\n| dayName           | string,                                                       |\n| dayNameShort      | string,                                                       |\n| dayPeriod         | string,                                                       |\n| dayTwoDigit       | 01, 02, 03, ..., 12, 13, etc.                                 |\n| hour              | 0, 1, 2, 3, ..., 12, 13, ..., 22, 23                          |\n| hour12            | 1, 2, 3, ..., 12, 1, 2, ..., 11, 12                           |\n| hour12TwoDigit    | 01, 02, ..., 12, 01, 02, ..., 11, 12                          |\n| hourTwoDigit      | 00, 01, 02, ..., 12, 13, ..., 22, 23                          |\n| iso               | A standard ISO8601 date string e.g. 2019-01-23T15:31:21.213Z, |\n| localeString      | A string with a language sensitive representation.            |\n| minute            | 0, 1, 2, ..., 58, 59                                          |\n| minuteTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| month             | 1, 2, 3, ..., 12                                              |\n| monthName         | Internationalized month name string.                          |\n| monthNameShort    | Internationalized abbreviated month name string.,             |\n| monthTwoDigit     | 01, 02, ..., 11, 12                                           |\n| second            | 0, 1, 2, ..., 58, 59                                          |\n| secondTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| timeZoneName      | Internationalized timezone, like `Pacific Daylight Time`      |\n| timeZoneNameShort | Internationalized timezone, abbreviated, like `PST`           |\n| year              | 0, 1, 2, ..., 1999, 2000, 2001, etc.                          |\n| yearTwoDigit      | 00, 01, 02, ..., 17, 18, 19, ..., 98, 99                      |\n","readmeFilename":"README.md","gitHead":"38e50237c04e29792bd0ccfdc13308940a873817","bugs":{"url":"https://github.com/ampproject/amphtml/issues"},"_id":"@bentoproject/date-display@1.2112170012.0","_nodeVersion":"16.13.1","_npmVersion":"8.1.2","dist":{"integrity":"sha512-pb2EQyHtXwlNgWoKIeLKryrubXy0EQSf+EFLlz6YNUvWwsC0X58Je6ZZO27tgyFjc+KjwdQUjKt16CresYr68w==","shasum":"dc4258468891d1580a393bf2e3a3cd6a6be7a0f0","tarball":"https://registry.npmjs.org/@bentoproject/date-display/-/date-display-1.2112170012.0.tgz","fileCount":27,"unpackedSize":1852895,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhvdF6CRA9TVsSAnZWagAAIdMP/2T9Pwwlmq7N4ilPmHvl\naA2pgGztRcwKYl+ARLJ21Lg5fQjs0Ac8WXMH0eOFrMRhm8wSklakne2N6U3Y\nwoq7t4emhcOp/Zv7832qar3FDavdiDagx9WXDWWtwsnHShovtMeYHMMVRg6T\nsa8FUKg9AUNfo4vIyatIgFsWqk5WE9CW08n86sVDQNDECSrwzNY8VuMDSw6j\nlTbajF467ibZZIqBV5zVYf0gy4lIg/Kk0c911fzwQmf+VU9gTpIdn7pYExcn\nwcGd/xByQBq2bmi3XmnRaBNc7wSuxcw/fP0V9zmzR1NM8cEM91kKpm+X0G76\nW9cq9CA6lhnmhgR9B4wdrO+cG2atNZpSJ53ZRy6Tr74kDC39s+vHpG+NE6js\nVVyavoy7h9tYYKGswxrYV0HIe/8t8Da+OF7BpeHPDha7ialB1LlPh1p6JfPm\nsJASkzV4j2jO6QhUVX87a8Ac5QrY0qtDHWox8urGVr3PXNFKFtzGqBPOBPTO\n51rqynDz9ct9dfSmjpdtDSSsXm1osMCUjqkHK6nr1UTtoI9Jh37nbbCoM1wu\nX7YQnt3YGD26fhcwF1UrbEbKPHJjRcPwBf7KctiimfsYALof9a1jRyf6TJ7I\nQ2HfWSZg4RFcbZhvH5ZYaTslxVixOfHCBe1S6ymvaToYNM+bd88jjjpzfgoD\no+wh\r\n=6WdE\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCT13pdWuDil6P/pvHyl0yWTpDYyP72+QhEZHtLT2hvGQIgJOZsQB6PiNaZbpUvNhD4lEsADHCycCl23HFysIJr2kE="}]},"_npmUser":{"name":"bentoprojectbot","email":"bentobot@amp.dev"},"directories":{},"maintainers":[{"name":"bentoprojectbot","email":"bentobot@amp.dev"},{"name":"kristoferbaxter","email":"kbax@me.com"},{"name":"esth","email":"esther@amp.dev"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/date-display_1.2112170012.0_1639829881929_0.09786139579133879"},"_hasShrinkwrap":false},"1.2112201724.0":{"name":"@bentoproject/date-display","version":"1.2112201724.0","description":"Displays time data that you can render in your page.","author":{"name":"Bento Authors"},"license":"Apache-2.0","main":"./dist/web-component.js","module":"./dist/web-component.module.js","exports":{".":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./web-component":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./preact":{"import":"./dist/component-preact.module.js","require":"./dist/component-preact.js"},"./react":{"import":"./dist/component-react.module.js","require":"./dist/component-react.js"}},"repository":{"type":"git","url":"git+https://github.com/ampproject/amphtml.git","directory":"extensions/amp-date-display/1.0"},"homepage":"https://github.com/ampproject/amphtml/tree/main/extensions/amp-date-display/1.0","peerDependencies":{"preact":"^10.2.1","react":"^17.0.0"},"readme":"# Bento Date Display\n\nDisplays time data that you can render in your page. By providing specific [attributes](#attributes) in the Bento Date Display tag, the Bento Date Display extension returns a list of time parameters, which you can pass to [an amp-mustache template](../../amp-mustache/amp-mustache.md) for rendering. Refer to the [list below for each returned time parameter](#returned-time-parameters).\n\n## Web Component\n\nWe don't support the web component version of `bento-date-display` since `<template>` support is still being designed. This effort can be tracked in this [issue](https://go.amp.dev/issue/36619).\n\n<!--\nAn older version of this file contains the removed section, though it's incorrect:\n\nhttps://github.com/ampproject/amphtml/blob/422d171e87571c4d125a2bf956e78e92444c10e8/extensions/amp-date-display/1.0/README.md\n-->\n\n---\n\n## Preact/React Component\n\n### Import via npm\n\n```sh\nnpm install @bentoproject/date-display\n```\n\n```javascript\nimport React from 'react';\nimport {BentoDateDisplay} from '@bentoproject/date-display/react';\nimport '@bentoproject/date-display/styles.css';\n\nfunction App() {\n  return (\n    <BentoDateDisplay\n      datetime={dateTime}\n      displayIn={displayIn}\n      locale={locale}\n      render={(date) => (\n        <div>{`ISO: ${date.iso}; locale: ${date.localeString}`}</div>\n      )}\n    />\n  );\n}\n```\n\n### Interactivity and API usage\n\nThe Bento Date Display component does not have an imperative API. However, the Bento Date Display Preact/React component does accept a `render` prop that renders the consumer's template. This `render` prop should be a function which the Bento Date Display Preact/React component can use to render its template. The `render` callback will be provided a variety of date-related parameters for consumers to interpolate in the rendered template. See the [`render` prop section](#render) for more information.\n\n### Layout and style\n\nThe Bento Date Display Preact/React component allows consumers to render their own templates. These templates may use inline styles, `<style>` tags, Preact/React components that import their own stylesheets.\n\n### Props\n\n#### `datetime`\n\nRequired prop. Denotes the date and time as a Date, String, or Nuumber. If String, must be a standard ISO 8601 date string (e.g. 2017-08-02T15:05:05.000Z) or the string `now`. If set to `now`, it will use the time the page loaded to render its template. If Number, must be a POSIX epoch value in milliseconds.\n\n#### `displayIn`\n\nOptional prop that can be either `\"utc\"` or `\"local\"` and defaults to `\"local\"`. This prop indicates what timezone to display the date in. If set to the value `\"utc\"`, the component will convert the given date to UTC.\n\n#### `locale`\n\nAn internationalization language string for each timer unit. The default value is `en` (for English). This prop supports all values that are supported by the user's browser.\n\n#### `localeOptions`\n\nThe `localeOptions` object supports all the options under [Intl.DateTimeFormat.options](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/DateTimeFormat#parameters) parameter that specifies the formatting style to use for `localeString` format.\n\nNote that if the `displayIn` prop is set to `utc`, the value of `localeOptions.timeZone` will automatically be converted to `UTC`.\n\n#### `render`\n\nOptional callback that should render a template. The callback will be provided an object with properties/values related to the date expressed in `datetime`.\n\nBy default, the Bento Date Display component will display the [`localeString` form of the Date](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/toLocaleString) for the given locale and localeOption. See the [Returned Time Parameters section](#returned-time-parameters) for more details on how each property will be displayed.\n\n```typescript\n(dateParams: DateParams) => JSXInternal.Element\ninterface DateParams {\n  day: number;\n  dayName: string;\n  dayNameShort: string;\n  dayPeriod: string;\n  dayTwoDigit: string;\n  hour: number;\n  hour12: number;\n  hour12TwoDigit: string;\n  hourTwoDigit: string;\n  iso: string;\n  localeString: string;\n  minute: number;\n  minuteTwoDigit: string;\n  month: number;\n  monthName: string;\n  monthNameShort: string;\n  monthTwoDigit: string;\n  second: number;\n  secondTwoDigit: string;\n  timeZoneName: string;\n  timeZoneNameShort: string;\n  year: number;\n  yearTwoDi: string;\n}\n```\n\n### Returned Time Parameters\n\nThis table lists the format you can specify in your Mustache template:\n\n| Format            | Meaning                                                       |\n| ----------------- | ------------------------------------------------------------- |\n| day               | 1, 2, ...12, 13, etc.                                         |\n| dayName           | string,                                                       |\n| dayNameShort      | string,                                                       |\n| dayPeriod         | string,                                                       |\n| dayTwoDigit       | 01, 02, 03, ..., 12, 13, etc.                                 |\n| hour              | 0, 1, 2, 3, ..., 12, 13, ..., 22, 23                          |\n| hour12            | 1, 2, 3, ..., 12, 1, 2, ..., 11, 12                           |\n| hour12TwoDigit    | 01, 02, ..., 12, 01, 02, ..., 11, 12                          |\n| hourTwoDigit      | 00, 01, 02, ..., 12, 13, ..., 22, 23                          |\n| iso               | A standard ISO8601 date string e.g. 2019-01-23T15:31:21.213Z, |\n| localeString      | A string with a language sensitive representation.            |\n| minute            | 0, 1, 2, ..., 58, 59                                          |\n| minuteTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| month             | 1, 2, 3, ..., 12                                              |\n| monthName         | Internationalized month name string.                          |\n| monthNameShort    | Internationalized abbreviated month name string.,             |\n| monthTwoDigit     | 01, 02, ..., 11, 12                                           |\n| second            | 0, 1, 2, ..., 58, 59                                          |\n| secondTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| timeZoneName      | Internationalized timezone, like `Pacific Daylight Time`      |\n| timeZoneNameShort | Internationalized timezone, abbreviated, like `PST`           |\n| year              | 0, 1, 2, ..., 1999, 2000, 2001, etc.                          |\n| yearTwoDigit      | 00, 01, 02, ..., 17, 18, 19, ..., 98, 99                      |\n","readmeFilename":"README.md","gitHead":"a8be9d1eaab4dcebc8c170c9911acf0c8a5e73c1","bugs":{"url":"https://github.com/ampproject/amphtml/issues"},"_id":"@bentoproject/date-display@1.2112201724.0","_nodeVersion":"16.13.1","_npmVersion":"8.1.2","dist":{"integrity":"sha512-Uv6Qv1LU5+ZjFV4fDfJVyG+Wr0moKQJ+11+vbHkH5O+qlCKA3J8JvjBLs4q6awufR8NYsaee8nUPSfI8v6p1Dw==","shasum":"4fa8326d54f3aee0f7187c62678da45e9a372671","tarball":"https://registry.npmjs.org/@bentoproject/date-display/-/date-display-1.2112201724.0.tgz","fileCount":27,"unpackedSize":1852895,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhwcbbCRA9TVsSAnZWagAAXxIP/inJrjLEJyu2KUzx7+xi\n+/HuVIhY+YWfuzyv7wSsRyJHqfpi3FW/CkiHHaqvaPp6LIFs7wVytDRUMpJb\nJ9nRFkrQVLaB9369gdbV9djbYtVxYSA8p6C1D02fpn2ZNd+h98EB0Yh0zvPU\nzkTQSzmuDQSesiww6/nELUllBlhnZkJ5jZBWvIWBgKwQyTAF1wFY7j0Cqm/X\nmGUQsLh5oyftgO5W3rIT4YWlTsF7v/ez359B6xVGJ0SsvXHxdvYuFbONGmSE\nxDFQia5mS+iBxZaorvTgVV5RQL1X2+93BEwa6q0Hh5m1dMcwNq7AvPBXZyfF\n+f6SJ+vr/g1E/a7qsh2eheqFTUMXR/DreHrnHiACoA9V/o68yIfDmQFEVnq1\n24bRU8vJhDrwTBFP4ChoIc23ZseSdM7PK573DQ5NuZD6/Jzvqk/lD8gsimfl\nq2YRENyX3dOzhqWT1oL26E3lYOq/VT+m/FeEB3D10jL36jNMAWA8w6Hawlhm\ncohfdGGhM6O7XftlD4hcaXWBC8/GSTJekk2Aa3y4FOFbLbAb/f1+FOhuCqv0\nvUYx/uVKO1RDZJAjgcQIa7VrZtnpWsRepZtznJrBqXhDT6Mgjj3nXuu9KVuj\nd2heZTncSBuNJbJ+xj9JrtqjH1X1SR3LbjoEXomlOICMoz6cT/5K0uzjvtXm\n4zNt\r\n=vEOA\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCP44PVbdzzagXSPGytGdxGqrjnqHNDcBjZ+l7lKlKYVAIhAIpzt4noe5ewLNnUsX/DkaLn2aGZ8qwEa5xymJdUc2M5"}]},"_npmUser":{"name":"bentoprojectbot","email":"bentobot@amp.dev"},"directories":{},"maintainers":[{"name":"bentoprojectbot","email":"bentobot@amp.dev"},{"name":"kristoferbaxter","email":"kbax@me.com"},{"name":"esth","email":"esther@amp.dev"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/date-display_1.2112201724.0_1640089306951_0.5754260816251395"},"_hasShrinkwrap":false},"1.2112212349.0":{"name":"@bentoproject/date-display","version":"1.2112212349.0","description":"Displays time data that you can render in your page.","author":{"name":"Bento Authors"},"license":"Apache-2.0","main":"./dist/web-component.js","module":"./dist/web-component.module.js","exports":{".":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./web-component":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./preact":{"import":"./dist/component-preact.module.js","require":"./dist/component-preact.js"},"./react":{"import":"./dist/component-react.module.js","require":"./dist/component-react.js"}},"repository":{"type":"git","url":"git+https://github.com/ampproject/amphtml.git","directory":"extensions/amp-date-display/1.0"},"homepage":"https://github.com/ampproject/amphtml/tree/main/extensions/amp-date-display/1.0","peerDependencies":{"preact":"^10.2.1","react":"^17.0.0"},"readme":"# Bento Date Display\n\nDisplays time data that you can render in your page. By providing specific [attributes](#attributes) in the Bento Date Display tag, the Bento Date Display extension returns a list of time parameters, which you can pass to [an amp-mustache template](../../amp-mustache/amp-mustache.md) for rendering. Refer to the [list below for each returned time parameter](#returned-time-parameters).\n\n## Web Component\n\nWe don't support the web component version of `bento-date-display` since `<template>` support is still being designed. This effort can be tracked in this [issue](https://go.amp.dev/issue/36619).\n\n<!--\nAn older version of this file contains the removed section, though it's incorrect:\n\nhttps://github.com/ampproject/amphtml/blob/422d171e87571c4d125a2bf956e78e92444c10e8/extensions/amp-date-display/1.0/README.md\n-->\n\n---\n\n## Preact/React Component\n\n### Import via npm\n\n```sh\nnpm install @bentoproject/date-display\n```\n\n```javascript\nimport React from 'react';\nimport {BentoDateDisplay} from '@bentoproject/date-display/react';\nimport '@bentoproject/date-display/styles.css';\n\nfunction App() {\n  return (\n    <BentoDateDisplay\n      datetime={dateTime}\n      displayIn={displayIn}\n      locale={locale}\n      render={(date) => (\n        <div>{`ISO: ${date.iso}; locale: ${date.localeString}`}</div>\n      )}\n    />\n  );\n}\n```\n\n### Interactivity and API usage\n\nThe Bento Date Display component does not have an imperative API. However, the Bento Date Display Preact/React component does accept a `render` prop that renders the consumer's template. This `render` prop should be a function which the Bento Date Display Preact/React component can use to render its template. The `render` callback will be provided a variety of date-related parameters for consumers to interpolate in the rendered template. See the [`render` prop section](#render) for more information.\n\n### Layout and style\n\nThe Bento Date Display Preact/React component allows consumers to render their own templates. These templates may use inline styles, `<style>` tags, Preact/React components that import their own stylesheets.\n\n### Props\n\n#### `datetime`\n\nRequired prop. Denotes the date and time as a Date, String, or Nuumber. If String, must be a standard ISO 8601 date string (e.g. 2017-08-02T15:05:05.000Z) or the string `now`. If set to `now`, it will use the time the page loaded to render its template. If Number, must be a POSIX epoch value in milliseconds.\n\n#### `displayIn`\n\nOptional prop that can be either `\"utc\"` or `\"local\"` and defaults to `\"local\"`. This prop indicates what timezone to display the date in. If set to the value `\"utc\"`, the component will convert the given date to UTC.\n\n#### `locale`\n\nAn internationalization language string for each timer unit. The default value is `en` (for English). This prop supports all values that are supported by the user's browser.\n\n#### `localeOptions`\n\nThe `localeOptions` object supports all the options under [Intl.DateTimeFormat.options](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/DateTimeFormat#parameters) parameter that specifies the formatting style to use for `localeString` format.\n\nNote that if the `displayIn` prop is set to `utc`, the value of `localeOptions.timeZone` will automatically be converted to `UTC`.\n\n#### `render`\n\nOptional callback that should render a template. The callback will be provided an object with properties/values related to the date expressed in `datetime`.\n\nBy default, the Bento Date Display component will display the [`localeString` form of the Date](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/toLocaleString) for the given locale and localeOption. See the [Returned Time Parameters section](#returned-time-parameters) for more details on how each property will be displayed.\n\n```typescript\n(dateParams: DateParams) => JSXInternal.Element\ninterface DateParams {\n  day: number;\n  dayName: string;\n  dayNameShort: string;\n  dayPeriod: string;\n  dayTwoDigit: string;\n  hour: number;\n  hour12: number;\n  hour12TwoDigit: string;\n  hourTwoDigit: string;\n  iso: string;\n  localeString: string;\n  minute: number;\n  minuteTwoDigit: string;\n  month: number;\n  monthName: string;\n  monthNameShort: string;\n  monthTwoDigit: string;\n  second: number;\n  secondTwoDigit: string;\n  timeZoneName: string;\n  timeZoneNameShort: string;\n  year: number;\n  yearTwoDi: string;\n}\n```\n\n### Returned Time Parameters\n\nThis table lists the format you can specify in your Mustache template:\n\n| Format            | Meaning                                                       |\n| ----------------- | ------------------------------------------------------------- |\n| day               | 1, 2, ...12, 13, etc.                                         |\n| dayName           | string,                                                       |\n| dayNameShort      | string,                                                       |\n| dayPeriod         | string,                                                       |\n| dayTwoDigit       | 01, 02, 03, ..., 12, 13, etc.                                 |\n| hour              | 0, 1, 2, 3, ..., 12, 13, ..., 22, 23                          |\n| hour12            | 1, 2, 3, ..., 12, 1, 2, ..., 11, 12                           |\n| hour12TwoDigit    | 01, 02, ..., 12, 01, 02, ..., 11, 12                          |\n| hourTwoDigit      | 00, 01, 02, ..., 12, 13, ..., 22, 23                          |\n| iso               | A standard ISO8601 date string e.g. 2019-01-23T15:31:21.213Z, |\n| localeString      | A string with a language sensitive representation.            |\n| minute            | 0, 1, 2, ..., 58, 59                                          |\n| minuteTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| month             | 1, 2, 3, ..., 12                                              |\n| monthName         | Internationalized month name string.                          |\n| monthNameShort    | Internationalized abbreviated month name string.,             |\n| monthTwoDigit     | 01, 02, ..., 11, 12                                           |\n| second            | 0, 1, 2, ..., 58, 59                                          |\n| secondTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| timeZoneName      | Internationalized timezone, like `Pacific Daylight Time`      |\n| timeZoneNameShort | Internationalized timezone, abbreviated, like `PST`           |\n| year              | 0, 1, 2, ..., 1999, 2000, 2001, etc.                          |\n| yearTwoDigit      | 00, 01, 02, ..., 17, 18, 19, ..., 98, 99                      |\n","readmeFilename":"README.md","gitHead":"a6b6a6c259283b2cfcfb474966602c2ada072484","bugs":{"url":"https://github.com/ampproject/amphtml/issues"},"_id":"@bentoproject/date-display@1.2112212349.0","_nodeVersion":"16.13.1","_npmVersion":"8.1.2","dist":{"integrity":"sha512-DbgN+K4D8IH7zVZms2RohA1rLBcddF+m7ooojr0HaM+xfAeBTeN/MNLoAoIV/UX2gd4dMAZ6mckbkXMcGGJH0A==","shasum":"f5359d7425bf9054f00cbcaef0517b85a795d598","tarball":"https://registry.npmjs.org/@bentoproject/date-display/-/date-display-1.2112212349.0.tgz","fileCount":27,"unpackedSize":1852895,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhwxi7CRA9TVsSAnZWagAA7ucP/RtO6piDVbDNN6JHdeYG\nP2vLNT0/3Vac1mTDQ0fX2WfkJ2qxZS9IM14ag5okDCYORyQYWabZIh6m9Rra\nEWcDDxgdDBFZWm8us+aiJUvQhFVGCeZR7wRXEnsowiIYPlAa8oUo4YhJ6USv\nCLMMp17zj1qSbdYvnly2MLVh5y/q/mMfy2co0DNwWdyEY1+LxbAHUAot10k0\nkfstgFVpYPruEvhhq6nIluDbC7mj3+dzGTVH8swtxKCyI7ilAOKNCxag8q4f\np5GvzKRZj5ocww0R/Qnu3knDwr3O3CDQQG6cchn/7uiTUDUP4tKG+DLh5V3q\nnP5eb7FvxFXe0bixfgNEo+KmxpNRb67yjcWd2ZK0Zm1BuaLo6A2PfVgHdTWh\n0ZjseX5PVjJ66L/7RrPVsNwAow9QX5rnU5EhMlVRIiHJYZQrMICfQ/MZcNqU\nPo2eJZf5z/n0G7AVc1xAUM3lmhC1uzlbdLpMUjnpPFz5gZt7+oY5qWEIjG3Q\nn6vMW+ZanHKgnAICPq7V3Dd6FOY5ASzZk/KsGYMn85tPL4ppPBkhulHG6jxP\nQNBv4Gepy/pfbVemhu3vEIFiHmVQeodpaPrvYGunF6LI5usbPK5IfyeSNQ6I\naRbBmkS7InFzc9BlMitxMymA4QyLx9InNzYi6Wt7W4n9ns/MOVyqSCCUGA4n\nATBG\r\n=3bPo\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIGcuSnITmmesUZ0E/3L4kwqANHdMOIVsgPtq7uaRKoldAiB1L9zgnT8vibYXvzL/hOy3b/6mRCS25MBLm0VCylR77A=="}]},"_npmUser":{"name":"bentoprojectbot","email":"bentobot@amp.dev"},"directories":{},"maintainers":[{"name":"bentoprojectbot","email":"bentobot@amp.dev"},{"name":"kristoferbaxter","email":"kbax@me.com"},{"name":"esth","email":"esther@amp.dev"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/date-display_1.2112212349.0_1640175803447_0.6813493522990548"},"_hasShrinkwrap":false},"1.2112221739.0":{"name":"@bentoproject/date-display","version":"1.2112221739.0","description":"Displays time data that you can render in your page.","author":{"name":"Bento Authors"},"license":"Apache-2.0","main":"./dist/web-component.js","module":"./dist/web-component.module.js","exports":{".":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./web-component":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./preact":{"import":"./dist/component-preact.module.js","require":"./dist/component-preact.js"},"./react":{"import":"./dist/component-react.module.js","require":"./dist/component-react.js"}},"repository":{"type":"git","url":"git+https://github.com/ampproject/amphtml.git","directory":"extensions/amp-date-display/1.0"},"homepage":"https://github.com/ampproject/amphtml/tree/main/extensions/amp-date-display/1.0","peerDependencies":{"preact":"^10.2.1","react":"^17.0.0"},"readme":"# Bento Date Display\n\nDisplays time data that you can render in your page. By providing specific [attributes](#attributes) in the Bento Date Display tag, the Bento Date Display extension returns a list of time parameters, which you can pass to [an amp-mustache template](../../amp-mustache/amp-mustache.md) for rendering. Refer to the [list below for each returned time parameter](#returned-time-parameters).\n\n## Web Component\n\nWe don't support the web component version of `bento-date-display` since `<template>` support is still being designed. This effort can be tracked in this [issue](https://go.amp.dev/issue/36619).\n\n<!--\nAn older version of this file contains the removed section, though it's incorrect:\n\nhttps://github.com/ampproject/amphtml/blob/422d171e87571c4d125a2bf956e78e92444c10e8/extensions/amp-date-display/1.0/README.md\n-->\n\n---\n\n## Preact/React Component\n\n### Import via npm\n\n```sh\nnpm install @bentoproject/date-display\n```\n\n```javascript\nimport React from 'react';\nimport {BentoDateDisplay} from '@bentoproject/date-display/react';\nimport '@bentoproject/date-display/styles.css';\n\nfunction App() {\n  return (\n    <BentoDateDisplay\n      datetime={dateTime}\n      displayIn={displayIn}\n      locale={locale}\n      render={(date) => (\n        <div>{`ISO: ${date.iso}; locale: ${date.localeString}`}</div>\n      )}\n    />\n  );\n}\n```\n\n### Interactivity and API usage\n\nThe Bento Date Display component does not have an imperative API. However, the Bento Date Display Preact/React component does accept a `render` prop that renders the consumer's template. This `render` prop should be a function which the Bento Date Display Preact/React component can use to render its template. The `render` callback will be provided a variety of date-related parameters for consumers to interpolate in the rendered template. See the [`render` prop section](#render) for more information.\n\n### Layout and style\n\nThe Bento Date Display Preact/React component allows consumers to render their own templates. These templates may use inline styles, `<style>` tags, Preact/React components that import their own stylesheets.\n\n### Props\n\n#### `datetime`\n\nRequired prop. Denotes the date and time as a Date, String, or Nuumber. If String, must be a standard ISO 8601 date string (e.g. 2017-08-02T15:05:05.000Z) or the string `now`. If set to `now`, it will use the time the page loaded to render its template. If Number, must be a POSIX epoch value in milliseconds.\n\n#### `displayIn`\n\nOptional prop that can be either `\"utc\"` or `\"local\"` and defaults to `\"local\"`. This prop indicates what timezone to display the date in. If set to the value `\"utc\"`, the component will convert the given date to UTC.\n\n#### `locale`\n\nAn internationalization language string for each timer unit. The default value is `en` (for English). This prop supports all values that are supported by the user's browser.\n\n#### `localeOptions`\n\nThe `localeOptions` object supports all the options under [Intl.DateTimeFormat.options](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/DateTimeFormat#parameters) parameter that specifies the formatting style to use for `localeString` format.\n\nNote that if the `displayIn` prop is set to `utc`, the value of `localeOptions.timeZone` will automatically be converted to `UTC`.\n\n#### `render`\n\nOptional callback that should render a template. The callback will be provided an object with properties/values related to the date expressed in `datetime`.\n\nBy default, the Bento Date Display component will display the [`localeString` form of the Date](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/toLocaleString) for the given locale and localeOption. See the [Returned Time Parameters section](#returned-time-parameters) for more details on how each property will be displayed.\n\n```typescript\n(dateParams: DateParams) => JSXInternal.Element\ninterface DateParams {\n  day: number;\n  dayName: string;\n  dayNameShort: string;\n  dayPeriod: string;\n  dayTwoDigit: string;\n  hour: number;\n  hour12: number;\n  hour12TwoDigit: string;\n  hourTwoDigit: string;\n  iso: string;\n  localeString: string;\n  minute: number;\n  minuteTwoDigit: string;\n  month: number;\n  monthName: string;\n  monthNameShort: string;\n  monthTwoDigit: string;\n  second: number;\n  secondTwoDigit: string;\n  timeZoneName: string;\n  timeZoneNameShort: string;\n  year: number;\n  yearTwoDi: string;\n}\n```\n\n### Returned Time Parameters\n\nThis table lists the format you can specify in your Mustache template:\n\n| Format            | Meaning                                                       |\n| ----------------- | ------------------------------------------------------------- |\n| day               | 1, 2, ...12, 13, etc.                                         |\n| dayName           | string,                                                       |\n| dayNameShort      | string,                                                       |\n| dayPeriod         | string,                                                       |\n| dayTwoDigit       | 01, 02, 03, ..., 12, 13, etc.                                 |\n| hour              | 0, 1, 2, 3, ..., 12, 13, ..., 22, 23                          |\n| hour12            | 1, 2, 3, ..., 12, 1, 2, ..., 11, 12                           |\n| hour12TwoDigit    | 01, 02, ..., 12, 01, 02, ..., 11, 12                          |\n| hourTwoDigit      | 00, 01, 02, ..., 12, 13, ..., 22, 23                          |\n| iso               | A standard ISO8601 date string e.g. 2019-01-23T15:31:21.213Z, |\n| localeString      | A string with a language sensitive representation.            |\n| minute            | 0, 1, 2, ..., 58, 59                                          |\n| minuteTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| month             | 1, 2, 3, ..., 12                                              |\n| monthName         | Internationalized month name string.                          |\n| monthNameShort    | Internationalized abbreviated month name string.,             |\n| monthTwoDigit     | 01, 02, ..., 11, 12                                           |\n| second            | 0, 1, 2, ..., 58, 59                                          |\n| secondTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| timeZoneName      | Internationalized timezone, like `Pacific Daylight Time`      |\n| timeZoneNameShort | Internationalized timezone, abbreviated, like `PST`           |\n| year              | 0, 1, 2, ..., 1999, 2000, 2001, etc.                          |\n| yearTwoDigit      | 00, 01, 02, ..., 17, 18, 19, ..., 98, 99                      |\n","readmeFilename":"README.md","gitHead":"5d282652a97695e5ec57a655f76c0cb6d40de066","bugs":{"url":"https://github.com/ampproject/amphtml/issues"},"_id":"@bentoproject/date-display@1.2112221739.0","_nodeVersion":"16.13.1","_npmVersion":"8.1.2","dist":{"integrity":"sha512-GRO8dvWnZYBN0CHb8gO55hX187eVRd0srzstD1Ysf9jAP3X9GVC9yVATOlU4ZATDRWBrmAbv0bD4vv0v1tCd7Q==","shasum":"41c9abcc2102bf98a6a8d1fe774b5c398bef97f7","tarball":"https://registry.npmjs.org/@bentoproject/date-display/-/date-display-1.2112221739.0.tgz","fileCount":27,"unpackedSize":1852895,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhxGkbCRA9TVsSAnZWagAAaYIP/1UZnoroPoPLAbt2IWPE\n1uglvwRdJ7Fc61BmZEblIVk28viYyPA+OJvzr8bQ7NRvNx4pwM2kJoBWX9IK\nm7dFfohDohH5LeuatxMVwdBfnajjoD4tClUZOnEVM3iUWds8ZJ+4/hL4vXA2\nwGSOqox/feUnkAEUNUDoIBbHn8wIH2CMchq9p2zM9lv5bT3+azjrIUAA0Xgq\nq8fcippkIkJdypSMlLeeb7BvtoqNBjWAlqH6smsjIqLPcp41qjvYwpufyVxD\nuFNC5LJLXK6BRzAOOQT0TOOtfzdH5lw2EwzeH+PVOURMU8vw33F5oFNVtH9w\nht//OtLdGhjA+bMNZioRB/swBzmXoZCQ9ChkWNmRkcKsi3bptFAFOet/vZw7\nqYS15RSA/rwxft8LSRMHffSfoVgjkhs+rdd2WElGsQJc7FGDNwnIYvBu2dQu\nHm0uwZK0P72qWK8hNRtcVoDH/oOz46vZQ0acz6zUkgHT5yka/BeEdSEjmBRX\ns2MMSdvxJZBVNGhPoaDwtEGq91CdSUDMcWsuDGNSA/2ziZUHotqRFgdtRUAs\nFEYxyw03vSTvt4kXQIGsl4Js3s2eJrfkwbFiY0cHXzchTkI9B6K4qE2k02jR\nO2DG4nvS+X4DTur+THLdCbaeVm7sp4VQ3NVQ+N9I7q8QznovlO9AYNgz9g9Z\nAt9M\r\n=pUnb\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIAFB+hT9kpQAOO/ItxcEQKMqXPSnAAU4zxnxxkbSW5FDAiBMHjADTG3ZCUHJfxSsSm1rttvYGNgFQm9lqJvheNck7g=="}]},"_npmUser":{"name":"bentoprojectbot","email":"bentobot@amp.dev"},"directories":{},"maintainers":[{"name":"bentoprojectbot","email":"bentobot@amp.dev"},{"name":"kristoferbaxter","email":"kbax@me.com"},{"name":"esth","email":"esther@amp.dev"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/date-display_1.2112221739.0_1640261915726_0.13351375087513606"},"_hasShrinkwrap":false},"1.2112231523.0":{"name":"@bentoproject/date-display","version":"1.2112231523.0","description":"Displays time data that you can render in your page.","author":{"name":"Bento Authors"},"license":"Apache-2.0","main":"./dist/web-component.js","module":"./dist/web-component.module.js","exports":{".":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./web-component":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./preact":{"import":"./dist/component-preact.module.js","require":"./dist/component-preact.js"},"./react":{"import":"./dist/component-react.module.js","require":"./dist/component-react.js"}},"repository":{"type":"git","url":"git+https://github.com/ampproject/amphtml.git","directory":"extensions/amp-date-display/1.0"},"homepage":"https://github.com/ampproject/amphtml/tree/main/extensions/amp-date-display/1.0","peerDependencies":{"preact":"^10.2.1","react":"^17.0.0"},"readme":"# Bento Date Display\n\nDisplays time data that you can render in your page. By providing specific [attributes](#attributes) in the Bento Date Display tag, the Bento Date Display extension returns a list of time parameters, which you can pass to [an amp-mustache template](../../amp-mustache/amp-mustache.md) for rendering. Refer to the [list below for each returned time parameter](#returned-time-parameters).\n\n## Web Component\n\nWe don't support the web component version of `bento-date-display` since `<template>` support is still being designed. This effort can be tracked in this [issue](https://go.amp.dev/issue/36619).\n\n<!--\nAn older version of this file contains the removed section, though it's incorrect:\n\nhttps://github.com/ampproject/amphtml/blob/422d171e87571c4d125a2bf956e78e92444c10e8/extensions/amp-date-display/1.0/README.md\n-->\n\n---\n\n## Preact/React Component\n\n### Import via npm\n\n```sh\nnpm install @bentoproject/date-display\n```\n\n```javascript\nimport React from 'react';\nimport {BentoDateDisplay} from '@bentoproject/date-display/react';\nimport '@bentoproject/date-display/styles.css';\n\nfunction App() {\n  return (\n    <BentoDateDisplay\n      datetime={dateTime}\n      displayIn={displayIn}\n      locale={locale}\n      render={(date) => (\n        <div>{`ISO: ${date.iso}; locale: ${date.localeString}`}</div>\n      )}\n    />\n  );\n}\n```\n\n### Interactivity and API usage\n\nThe Bento Date Display component does not have an imperative API. However, the Bento Date Display Preact/React component does accept a `render` prop that renders the consumer's template. This `render` prop should be a function which the Bento Date Display Preact/React component can use to render its template. The `render` callback will be provided a variety of date-related parameters for consumers to interpolate in the rendered template. See the [`render` prop section](#render) for more information.\n\n### Layout and style\n\nThe Bento Date Display Preact/React component allows consumers to render their own templates. These templates may use inline styles, `<style>` tags, Preact/React components that import their own stylesheets.\n\n### Props\n\n#### `datetime`\n\nRequired prop. Denotes the date and time as a Date, String, or Nuumber. If String, must be a standard ISO 8601 date string (e.g. 2017-08-02T15:05:05.000Z) or the string `now`. If set to `now`, it will use the time the page loaded to render its template. If Number, must be a POSIX epoch value in milliseconds.\n\n#### `displayIn`\n\nOptional prop that can be either `\"utc\"` or `\"local\"` and defaults to `\"local\"`. This prop indicates what timezone to display the date in. If set to the value `\"utc\"`, the component will convert the given date to UTC.\n\n#### `locale`\n\nAn internationalization language string for each timer unit. The default value is `en` (for English). This prop supports all values that are supported by the user's browser.\n\n#### `localeOptions`\n\nThe `localeOptions` object supports all the options under [Intl.DateTimeFormat.options](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/DateTimeFormat#parameters) parameter that specifies the formatting style to use for `localeString` format.\n\nNote that if the `displayIn` prop is set to `utc`, the value of `localeOptions.timeZone` will automatically be converted to `UTC`.\n\n#### `render`\n\nOptional callback that should render a template. The callback will be provided an object with properties/values related to the date expressed in `datetime`.\n\nBy default, the Bento Date Display component will display the [`localeString` form of the Date](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/toLocaleString) for the given locale and localeOption. See the [Returned Time Parameters section](#returned-time-parameters) for more details on how each property will be displayed.\n\n```typescript\n(dateParams: DateParams) => JSXInternal.Element\ninterface DateParams {\n  day: number;\n  dayName: string;\n  dayNameShort: string;\n  dayPeriod: string;\n  dayTwoDigit: string;\n  hour: number;\n  hour12: number;\n  hour12TwoDigit: string;\n  hourTwoDigit: string;\n  iso: string;\n  localeString: string;\n  minute: number;\n  minuteTwoDigit: string;\n  month: number;\n  monthName: string;\n  monthNameShort: string;\n  monthTwoDigit: string;\n  second: number;\n  secondTwoDigit: string;\n  timeZoneName: string;\n  timeZoneNameShort: string;\n  year: number;\n  yearTwoDi: string;\n}\n```\n\n### Returned Time Parameters\n\nThis table lists the format you can specify in your Mustache template:\n\n| Format            | Meaning                                                       |\n| ----------------- | ------------------------------------------------------------- |\n| day               | 1, 2, ...12, 13, etc.                                         |\n| dayName           | string,                                                       |\n| dayNameShort      | string,                                                       |\n| dayPeriod         | string,                                                       |\n| dayTwoDigit       | 01, 02, 03, ..., 12, 13, etc.                                 |\n| hour              | 0, 1, 2, 3, ..., 12, 13, ..., 22, 23                          |\n| hour12            | 1, 2, 3, ..., 12, 1, 2, ..., 11, 12                           |\n| hour12TwoDigit    | 01, 02, ..., 12, 01, 02, ..., 11, 12                          |\n| hourTwoDigit      | 00, 01, 02, ..., 12, 13, ..., 22, 23                          |\n| iso               | A standard ISO8601 date string e.g. 2019-01-23T15:31:21.213Z, |\n| localeString      | A string with a language sensitive representation.            |\n| minute            | 0, 1, 2, ..., 58, 59                                          |\n| minuteTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| month             | 1, 2, 3, ..., 12                                              |\n| monthName         | Internationalized month name string.                          |\n| monthNameShort    | Internationalized abbreviated month name string.,             |\n| monthTwoDigit     | 01, 02, ..., 11, 12                                           |\n| second            | 0, 1, 2, ..., 58, 59                                          |\n| secondTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| timeZoneName      | Internationalized timezone, like `Pacific Daylight Time`      |\n| timeZoneNameShort | Internationalized timezone, abbreviated, like `PST`           |\n| year              | 0, 1, 2, ..., 1999, 2000, 2001, etc.                          |\n| yearTwoDigit      | 00, 01, 02, ..., 17, 18, 19, ..., 98, 99                      |\n","readmeFilename":"README.md","gitHead":"3d06e61b6949affa49fa2c89bd550777f0fc8c3a","bugs":{"url":"https://github.com/ampproject/amphtml/issues"},"_id":"@bentoproject/date-display@1.2112231523.0","_nodeVersion":"16.13.1","_npmVersion":"8.1.2","dist":{"integrity":"sha512-1/uiSnlNQE+cIf+BhUH+zZugpvdHObzh08FreWrRt+GOQJ4NakSLgyjOyRUZw9Kj/9DjfjtNPyR+hxop9U933A==","shasum":"d8afee52889aea59ec043f924315c9e34528bfbd","tarball":"https://registry.npmjs.org/@bentoproject/date-display/-/date-display-1.2112231523.0.tgz","fileCount":27,"unpackedSize":1852895,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhxbsVCRA9TVsSAnZWagAA3BAP/064CaHsZfX4G8Mr1jKc\naj/+SLHaIO7/d3RNt4zKm5Ex8g/Yha9/1+KzkjIi/ETeDFlfkGNGbCgnMOM1\nMzPZZ+R/Kil0NzPFIGUEKnWK0D3kSTu1SoZu2PuVsWgq8p93fw/VE0PAx0Wy\n1YALm6bpYeWxRTzW/XgK1R7H7/lxqRTewtUAypexU+V7GZzGjV2YEu7M2T00\nTdwgVccV6SJtntSg3N6JgZKB9EwnHkAnSr76hgAvRu6aj3HOJoiYanU8fOce\nUiNEuCz1N4Zzx1dycFpZ2cSudAkd4R/CRxigyGFXre2q/BAVmYeFkQw2IPSy\nxtT8mdy5ptCe71l3vicXb3C8hlswBqkZqaU9uCoJ4psYpf/VuGkhrmeFM9am\nS9r2EGxrwDoMEPuz1oABXQ0gwOgrynDsGSwRYkrTKXdL5/t0I4QgDspmF2HB\nfFnUxcHTlZKy7d8oblwP89Vh29QaqiEHQJxCiKs97LTscOeqhBFWFbefcH7p\nFJy8JiUpiccCPNsAuCg9UDnOULa1DTHU+NiiW/Z3ztmpmbHYgxV5ppYli/kJ\nMa2vQo27KDo1zUTxaY1fOnt/JRDuyNNazvVtwoZyp3n5GBrBOfe8TxLVR59H\nD3iWZ3yQg5C2g7dgY6HfFcZe0m3slQwwXRe1rP0jQXWSwJ0sxEz86RMR/D2e\nf9Ev\r\n=4Btp\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIGSZHKrlTh843z47dDH7+uAyg4MzLqDPX2FH72dPtWYmAiEAyo03pO/GW1cG9VxtPpwFH18qI0OXb3cxWjF/BIMdDc4="}]},"_npmUser":{"name":"bentoprojectbot","email":"bentobot@amp.dev"},"directories":{},"maintainers":[{"name":"bentoprojectbot","email":"bentobot@amp.dev"},{"name":"kristoferbaxter","email":"kbax@me.com"},{"name":"esth","email":"esther@amp.dev"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/date-display_1.2112231523.0_1640348437371_0.5751633438145187"},"_hasShrinkwrap":false},"1.2201042109.0":{"name":"@bentoproject/date-display","version":"1.2201042109.0","description":"Displays time data that you can render in your page.","author":{"name":"Bento Authors"},"license":"Apache-2.0","main":"./dist/web-component.js","module":"./dist/web-component.module.js","exports":{".":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./web-component":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./preact":{"import":"./dist/component-preact.module.js","require":"./dist/component-preact.js"},"./react":{"import":"./dist/component-react.module.js","require":"./dist/component-react.js"}},"repository":{"type":"git","url":"git+https://github.com/ampproject/amphtml.git","directory":"extensions/amp-date-display/1.0"},"homepage":"https://github.com/ampproject/amphtml/tree/main/extensions/amp-date-display/1.0","peerDependencies":{"preact":"^10.2.1","react":"^17.0.0"},"readme":"# Bento Date Display\n\nDisplays time data that you can render in your page. By providing specific [attributes](#attributes) in the Bento Date Display tag, the Bento Date Display extension returns a list of time parameters, which you can pass to [an amp-mustache template](../../amp-mustache/amp-mustache.md) for rendering. Refer to the [list below for each returned time parameter](#returned-time-parameters).\n\n## Web Component\n\nWe don't support the web component version of `bento-date-display` since `<template>` support is still being designed. This effort can be tracked in this [issue](https://go.amp.dev/issue/36619).\n\n<!--\nAn older version of this file contains the removed section, though it's incorrect:\n\nhttps://github.com/ampproject/amphtml/blob/422d171e87571c4d125a2bf956e78e92444c10e8/extensions/amp-date-display/1.0/README.md\n-->\n\n---\n\n## Preact/React Component\n\n### Import via npm\n\n```sh\nnpm install @bentoproject/date-display\n```\n\n```javascript\nimport React from 'react';\nimport {BentoDateDisplay} from '@bentoproject/date-display/react';\nimport '@bentoproject/date-display/styles.css';\n\nfunction App() {\n  return (\n    <BentoDateDisplay\n      datetime={dateTime}\n      displayIn={displayIn}\n      locale={locale}\n      render={(date) => (\n        <div>{`ISO: ${date.iso}; locale: ${date.localeString}`}</div>\n      )}\n    />\n  );\n}\n```\n\n### Interactivity and API usage\n\nThe Bento Date Display component does not have an imperative API. However, the Bento Date Display Preact/React component does accept a `render` prop that renders the consumer's template. This `render` prop should be a function which the Bento Date Display Preact/React component can use to render its template. The `render` callback will be provided a variety of date-related parameters for consumers to interpolate in the rendered template. See the [`render` prop section](#render) for more information.\n\n### Layout and style\n\nThe Bento Date Display Preact/React component allows consumers to render their own templates. These templates may use inline styles, `<style>` tags, Preact/React components that import their own stylesheets.\n\n### Props\n\n#### `datetime`\n\nRequired prop. Denotes the date and time as a Date, String, or Nuumber. If String, must be a standard ISO 8601 date string (e.g. 2017-08-02T15:05:05.000Z) or the string `now`. If set to `now`, it will use the time the page loaded to render its template. If Number, must be a POSIX epoch value in milliseconds.\n\n#### `displayIn`\n\nOptional prop that can be either `\"utc\"` or `\"local\"` and defaults to `\"local\"`. This prop indicates what timezone to display the date in. If set to the value `\"utc\"`, the component will convert the given date to UTC.\n\n#### `locale`\n\nAn internationalization language string for each timer unit. The default value is `en` (for English). This prop supports all values that are supported by the user's browser.\n\n#### `localeOptions`\n\nThe `localeOptions` object supports all the options under [Intl.DateTimeFormat.options](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/DateTimeFormat#parameters) parameter that specifies the formatting style to use for `localeString` format.\n\nNote that if the `displayIn` prop is set to `utc`, the value of `localeOptions.timeZone` will automatically be converted to `UTC`.\n\n#### `render`\n\nOptional callback that should render a template. The callback will be provided an object with properties/values related to the date expressed in `datetime`.\n\nBy default, the Bento Date Display component will display the [`localeString` form of the Date](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/toLocaleString) for the given locale and localeOption. See the [Returned Time Parameters section](#returned-time-parameters) for more details on how each property will be displayed.\n\n```typescript\n(dateParams: DateParams) => JSXInternal.Element\ninterface DateParams {\n  day: number;\n  dayName: string;\n  dayNameShort: string;\n  dayPeriod: string;\n  dayTwoDigit: string;\n  hour: number;\n  hour12: number;\n  hour12TwoDigit: string;\n  hourTwoDigit: string;\n  iso: string;\n  localeString: string;\n  minute: number;\n  minuteTwoDigit: string;\n  month: number;\n  monthName: string;\n  monthNameShort: string;\n  monthTwoDigit: string;\n  second: number;\n  secondTwoDigit: string;\n  timeZoneName: string;\n  timeZoneNameShort: string;\n  year: number;\n  yearTwoDi: string;\n}\n```\n\n### Returned Time Parameters\n\nThis table lists the format you can specify in your Mustache template:\n\n| Format            | Meaning                                                       |\n| ----------------- | ------------------------------------------------------------- |\n| day               | 1, 2, ...12, 13, etc.                                         |\n| dayName           | string,                                                       |\n| dayNameShort      | string,                                                       |\n| dayPeriod         | string,                                                       |\n| dayTwoDigit       | 01, 02, 03, ..., 12, 13, etc.                                 |\n| hour              | 0, 1, 2, 3, ..., 12, 13, ..., 22, 23                          |\n| hour12            | 1, 2, 3, ..., 12, 1, 2, ..., 11, 12                           |\n| hour12TwoDigit    | 01, 02, ..., 12, 01, 02, ..., 11, 12                          |\n| hourTwoDigit      | 00, 01, 02, ..., 12, 13, ..., 22, 23                          |\n| iso               | A standard ISO8601 date string e.g. 2019-01-23T15:31:21.213Z, |\n| localeString      | A string with a language sensitive representation.            |\n| minute            | 0, 1, 2, ..., 58, 59                                          |\n| minuteTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| month             | 1, 2, 3, ..., 12                                              |\n| monthName         | Internationalized month name string.                          |\n| monthNameShort    | Internationalized abbreviated month name string.,             |\n| monthTwoDigit     | 01, 02, ..., 11, 12                                           |\n| second            | 0, 1, 2, ..., 58, 59                                          |\n| secondTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| timeZoneName      | Internationalized timezone, like `Pacific Daylight Time`      |\n| timeZoneNameShort | Internationalized timezone, abbreviated, like `PST`           |\n| year              | 0, 1, 2, ..., 1999, 2000, 2001, etc.                          |\n| yearTwoDigit      | 00, 01, 02, ..., 17, 18, 19, ..., 98, 99                      |\n","readmeFilename":"README.md","gitHead":"9526fe41f7489e55b2e2a8bf52d6b0e4367e19e8","bugs":{"url":"https://github.com/ampproject/amphtml/issues"},"_id":"@bentoproject/date-display@1.2201042109.0","_nodeVersion":"16.13.1","_npmVersion":"8.1.2","dist":{"integrity":"sha512-yrPlbZmSTtHlYcmz7cck7+BkB7KMebmAyk6TXbqA85Q+V/vNbvtfrxA0UtXZwxomzJMY7u5WrI4elOpyQUBhig==","shasum":"ac1045e9e6006b39eb35f043aa2fce09d0fdd389","tarball":"https://registry.npmjs.org/@bentoproject/date-display/-/date-display-1.2201042109.0.tgz","fileCount":27,"unpackedSize":1826941,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJh1Y98CRA9TVsSAnZWagAAosQP/2njNrXh4tZ+Uz+8YnHo\ntXQyXFReGNTqCdSWFRT6C26iOfYKOcU1OxYuJHd4/9iFnmoSNkIMrzxt55G8\nbqQCLMNExgwxryBzEJpiPlETtWV65nhYFH71ZmwDeFFf2+eaD9GxqkkNhFvd\nrZjRgXdqaH4p7cCQ5PE3+myQb9G41O1KU+SsrDydDKMv1Fuzxf437HHI2he8\nHeVonbO74tUGMJjXrYtKH2bcHI7/Gj7iYjKIsTGxvWnROg1pHU+Lz34+Jwy3\npOMFwOV8+SomrKzZvcOuKp0mJZWSWsSoFrOernpn6dflAsT7E+gsF52uW+Cs\n62MokETCYoG90Bew28RvJQlW+PQrG5oCzI6V50Ka/KTfY7kFbb36AH5LTK1W\nWHeKLL+Rr0j6ZTPHvTEwvXgFGV8h894wQ8atX7lB7BoveicQm97fkxDMH76u\nyFVa65l0kCc9QoZyCbrcPPaZaNxK4AT2EOLJ7VdcahKkzk5AxHemLAqc8bpF\nQey5vpSTOSma5LRzvK2W5qRRDCov9GoHfING0eq2yL7U8pOH0TtgJpndlAoy\nLFy3GxDjQPE9Cv7ezglryKcXjKWoqx0UHqqMA0BJOjB9MKNXspfTwSmVnh9J\nkJ619yU7nBQan9+mYyUuf2rXUS/f2+hI2lYHNYi+9wqiGBrwTCEY9Fi668Ho\nQyGP\r\n=PoCg\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIDHwly3qsFfwwyYB7y3FAAoOpRRxnGHCGCdlXCwSpVMQAiBCRoQdAr6bB8f3Bx0mNrEjKcDq70w65ydrGoWqFjmTyg=="}]},"_npmUser":{"name":"bentoprojectbot","email":"bentobot@amp.dev"},"directories":{},"maintainers":[{"name":"bentoprojectbot","email":"bentobot@amp.dev"},{"name":"kristoferbaxter","email":"kbax@me.com"},{"name":"esth","email":"esther@amp.dev"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/date-display_1.2201042109.0_1641385852748_0.5701827683341598"},"_hasShrinkwrap":false},"1.2201052144.0":{"name":"@bentoproject/date-display","version":"1.2201052144.0","description":"Displays time data that you can render in your page.","author":{"name":"Bento Authors"},"license":"Apache-2.0","main":"./dist/web-component.js","module":"./dist/web-component.module.js","exports":{".":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./web-component":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./preact":{"import":"./dist/component-preact.module.js","require":"./dist/component-preact.js"},"./react":{"import":"./dist/component-react.module.js","require":"./dist/component-react.js"}},"repository":{"type":"git","url":"git+https://github.com/ampproject/amphtml.git","directory":"extensions/amp-date-display/1.0"},"homepage":"https://github.com/ampproject/amphtml/tree/main/extensions/amp-date-display/1.0","peerDependencies":{"preact":"^10.2.1","react":"^17.0.0"},"readme":"# Bento Date Display\n\nDisplays time data that you can render in your page. By providing specific [attributes](#attributes) in the Bento Date Display tag, the Bento Date Display extension returns a list of time parameters, which you can pass to [an amp-mustache template](../../amp-mustache/amp-mustache.md) for rendering. Refer to the [list below for each returned time parameter](#returned-time-parameters).\n\n## Web Component\n\nWe don't support the web component version of `bento-date-display` since `<template>` support is still being designed. This effort can be tracked in this [issue](https://go.amp.dev/issue/36619).\n\n<!--\nAn older version of this file contains the removed section, though it's incorrect:\n\nhttps://github.com/ampproject/amphtml/blob/422d171e87571c4d125a2bf956e78e92444c10e8/extensions/amp-date-display/1.0/README.md\n-->\n\n---\n\n## Preact/React Component\n\n### Import via npm\n\n```sh\nnpm install @bentoproject/date-display\n```\n\n```javascript\nimport React from 'react';\nimport {BentoDateDisplay} from '@bentoproject/date-display/react';\nimport '@bentoproject/date-display/styles.css';\n\nfunction App() {\n  return (\n    <BentoDateDisplay\n      datetime={dateTime}\n      displayIn={displayIn}\n      locale={locale}\n      render={(date) => (\n        <div>{`ISO: ${date.iso}; locale: ${date.localeString}`}</div>\n      )}\n    />\n  );\n}\n```\n\n### Interactivity and API usage\n\nThe Bento Date Display component does not have an imperative API. However, the Bento Date Display Preact/React component does accept a `render` prop that renders the consumer's template. This `render` prop should be a function which the Bento Date Display Preact/React component can use to render its template. The `render` callback will be provided a variety of date-related parameters for consumers to interpolate in the rendered template. See the [`render` prop section](#render) for more information.\n\n### Layout and style\n\nThe Bento Date Display Preact/React component allows consumers to render their own templates. These templates may use inline styles, `<style>` tags, Preact/React components that import their own stylesheets.\n\n### Props\n\n#### `datetime`\n\nRequired prop. Denotes the date and time as a Date, String, or Nuumber. If String, must be a standard ISO 8601 date string (e.g. 2017-08-02T15:05:05.000Z) or the string `now`. If set to `now`, it will use the time the page loaded to render its template. If Number, must be a POSIX epoch value in milliseconds.\n\n#### `displayIn`\n\nOptional prop that can be either `\"utc\"` or `\"local\"` and defaults to `\"local\"`. This prop indicates what timezone to display the date in. If set to the value `\"utc\"`, the component will convert the given date to UTC.\n\n#### `locale`\n\nAn internationalization language string for each timer unit. The default value is `en` (for English). This prop supports all values that are supported by the user's browser.\n\n#### `localeOptions`\n\nThe `localeOptions` object supports all the options under [Intl.DateTimeFormat.options](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/DateTimeFormat#parameters) parameter that specifies the formatting style to use for `localeString` format.\n\nNote that if the `displayIn` prop is set to `utc`, the value of `localeOptions.timeZone` will automatically be converted to `UTC`.\n\n#### `render`\n\nOptional callback that should render a template. The callback will be provided an object with properties/values related to the date expressed in `datetime`.\n\nBy default, the Bento Date Display component will display the [`localeString` form of the Date](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/toLocaleString) for the given locale and localeOption. See the [Returned Time Parameters section](#returned-time-parameters) for more details on how each property will be displayed.\n\n```typescript\n(dateParams: DateParams) => JSXInternal.Element\ninterface DateParams {\n  day: number;\n  dayName: string;\n  dayNameShort: string;\n  dayPeriod: string;\n  dayTwoDigit: string;\n  hour: number;\n  hour12: number;\n  hour12TwoDigit: string;\n  hourTwoDigit: string;\n  iso: string;\n  localeString: string;\n  minute: number;\n  minuteTwoDigit: string;\n  month: number;\n  monthName: string;\n  monthNameShort: string;\n  monthTwoDigit: string;\n  second: number;\n  secondTwoDigit: string;\n  timeZoneName: string;\n  timeZoneNameShort: string;\n  year: number;\n  yearTwoDi: string;\n}\n```\n\n### Returned Time Parameters\n\nThis table lists the format you can specify in your Mustache template:\n\n| Format            | Meaning                                                       |\n| ----------------- | ------------------------------------------------------------- |\n| day               | 1, 2, ...12, 13, etc.                                         |\n| dayName           | string,                                                       |\n| dayNameShort      | string,                                                       |\n| dayPeriod         | string,                                                       |\n| dayTwoDigit       | 01, 02, 03, ..., 12, 13, etc.                                 |\n| hour              | 0, 1, 2, 3, ..., 12, 13, ..., 22, 23                          |\n| hour12            | 1, 2, 3, ..., 12, 1, 2, ..., 11, 12                           |\n| hour12TwoDigit    | 01, 02, ..., 12, 01, 02, ..., 11, 12                          |\n| hourTwoDigit      | 00, 01, 02, ..., 12, 13, ..., 22, 23                          |\n| iso               | A standard ISO8601 date string e.g. 2019-01-23T15:31:21.213Z, |\n| localeString      | A string with a language sensitive representation.            |\n| minute            | 0, 1, 2, ..., 58, 59                                          |\n| minuteTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| month             | 1, 2, 3, ..., 12                                              |\n| monthName         | Internationalized month name string.                          |\n| monthNameShort    | Internationalized abbreviated month name string.,             |\n| monthTwoDigit     | 01, 02, ..., 11, 12                                           |\n| second            | 0, 1, 2, ..., 58, 59                                          |\n| secondTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| timeZoneName      | Internationalized timezone, like `Pacific Daylight Time`      |\n| timeZoneNameShort | Internationalized timezone, abbreviated, like `PST`           |\n| year              | 0, 1, 2, ..., 1999, 2000, 2001, etc.                          |\n| yearTwoDigit      | 00, 01, 02, ..., 17, 18, 19, ..., 98, 99                      |\n","readmeFilename":"README.md","gitHead":"09cb7c2c04a007089967ccf35accd80cfaff0c83","bugs":{"url":"https://github.com/ampproject/amphtml/issues"},"_id":"@bentoproject/date-display@1.2201052144.0","_nodeVersion":"16.13.1","_npmVersion":"8.1.2","dist":{"integrity":"sha512-OhPczp4jDm79Dtk8LcqOfTfYDFrsgSxtmjyZ9DmIEQylW0fs6IdFiCKeSQHENQWJbS0s/I01P0haWJ9xCTtnrA==","shasum":"e628b34008e0a8c135c7804a9a4798535584e39b","tarball":"https://registry.npmjs.org/@bentoproject/date-display/-/date-display-1.2201052144.0.tgz","fileCount":27,"unpackedSize":1826941,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJh1uNRCRA9TVsSAnZWagAABGkQAJObWYpJPQaGWvOgGbQ4\nxFVN2SrFuPjdgtktilw4CEopariWMwd+WiEBfcFcZxfe2FwxUAUCxXD/700S\nZ+N6DeZY7atleOBxujvuoNY49O84xNYvTAaKEkSWBG+v4GoAUegHAUxMNq40\n3ItYLx3hCK9LPvA4OUq/VQiY/dkeZzqcIIGRibqNM39HwjfE+51VVIHaS0Ki\nMK1/Pn1dvrQJFlxzvKImmjulPRCsPmrGysMBVE5zilv62juDylpu8EdRwk4s\nH7QxAp3GnLgEBOMtxbdtX4m122heolW4xo6aY2KP4Nr97R8taEg/tvKyWwCm\nud1MThCMruhjirE7QhEZYMp2YeWOCGoGAGa9mqppzfcwhtQQv8XUfthwYZnh\nivZ/c8h/msr94V9l7Up7Q4tme4rXwiGLLmh21l8EbmcZvCGTma7IjzdzCO1P\nvqtuZTwsNVmSzvfbGq8C4x5iRWcDAa21Ag6cvdFHwRRLgMROIY9EgRC/AfVX\nfbxn7jF0mfbL9wV/dALpBBK9/biCr+Iyjm5BqtPTEa2DQyYzv3pxYQmxeZx+\nPvhdCeM8QoXiTLe5boJsUWLlXzVEg/BEfSbvE//VIajnQPJfmmj45mTU2fWS\nK5bxPRD+9oquoXHOYf5RDjNxHhfmZA1Exai+vnAKWFC9mQc7rVP4CppJzSTM\nqHGE\r\n=dSlW\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIHfH8b0UER4SIl/Mvde6ovVgzrrTUIpCkT6QKnk3983HAiEA1myxIqcUTuAdao9Zw0vurWC9CdjHCHbyJeiEOh+8bH4="}]},"_npmUser":{"name":"bentoprojectbot","email":"bentobot@amp.dev"},"directories":{},"maintainers":[{"name":"bentoprojectbot","email":"bentobot@amp.dev"},{"name":"kristoferbaxter","email":"kbax@me.com"},{"name":"esth","email":"esther@amp.dev"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/date-display_1.2201052144.0_1641472849037_0.8552293210375375"},"_hasShrinkwrap":false},"1.2201061922.0":{"name":"@bentoproject/date-display","version":"1.2201061922.0","description":"Displays time data that you can render in your page.","author":{"name":"Bento Authors"},"license":"Apache-2.0","main":"./dist/web-component.js","module":"./dist/web-component.module.js","exports":{".":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./web-component":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./preact":{"import":"./dist/component-preact.module.js","require":"./dist/component-preact.js"},"./react":{"import":"./dist/component-react.module.js","require":"./dist/component-react.js"}},"repository":{"type":"git","url":"git+https://github.com/ampproject/amphtml.git","directory":"extensions/amp-date-display/1.0"},"homepage":"https://github.com/ampproject/amphtml/tree/main/extensions/amp-date-display/1.0","peerDependencies":{"preact":"^10.2.1","react":"^17.0.0"},"readme":"# Bento Date Display\n\nDisplays time data that you can render in your page. By providing specific [attributes](#attributes) in the Bento Date Display tag, the Bento Date Display extension returns a list of time parameters, which you can pass to [an amp-mustache template](../../amp-mustache/amp-mustache.md) for rendering. Refer to the [list below for each returned time parameter](#returned-time-parameters).\n\n## Web Component\n\nWe don't support the web component version of `bento-date-display` since `<template>` support is still being designed. This effort can be tracked in this [issue](https://go.amp.dev/issue/36619).\n\n<!--\nAn older version of this file contains the removed section, though it's incorrect:\n\nhttps://github.com/ampproject/amphtml/blob/422d171e87571c4d125a2bf956e78e92444c10e8/extensions/amp-date-display/1.0/README.md\n-->\n\n---\n\n## Preact/React Component\n\n### Import via npm\n\n```sh\nnpm install @bentoproject/date-display\n```\n\n```javascript\nimport React from 'react';\nimport {BentoDateDisplay} from '@bentoproject/date-display/react';\nimport '@bentoproject/date-display/styles.css';\n\nfunction App() {\n  return (\n    <BentoDateDisplay\n      datetime={dateTime}\n      displayIn={displayIn}\n      locale={locale}\n      render={(date) => (\n        <div>{`ISO: ${date.iso}; locale: ${date.localeString}`}</div>\n      )}\n    />\n  );\n}\n```\n\n### Interactivity and API usage\n\nThe Bento Date Display component does not have an imperative API. However, the Bento Date Display Preact/React component does accept a `render` prop that renders the consumer's template. This `render` prop should be a function which the Bento Date Display Preact/React component can use to render its template. The `render` callback will be provided a variety of date-related parameters for consumers to interpolate in the rendered template. See the [`render` prop section](#render) for more information.\n\n### Layout and style\n\nThe Bento Date Display Preact/React component allows consumers to render their own templates. These templates may use inline styles, `<style>` tags, Preact/React components that import their own stylesheets.\n\n### Props\n\n#### `datetime`\n\nRequired prop. Denotes the date and time as a Date, String, or Nuumber. If String, must be a standard ISO 8601 date string (e.g. 2017-08-02T15:05:05.000Z) or the string `now`. If set to `now`, it will use the time the page loaded to render its template. If Number, must be a POSIX epoch value in milliseconds.\n\n#### `displayIn`\n\nOptional prop that can be either `\"utc\"` or `\"local\"` and defaults to `\"local\"`. This prop indicates what timezone to display the date in. If set to the value `\"utc\"`, the component will convert the given date to UTC.\n\n#### `locale`\n\nAn internationalization language string for each timer unit. The default value is `en` (for English). This prop supports all values that are supported by the user's browser.\n\n#### `localeOptions`\n\nThe `localeOptions` object supports all the options under [Intl.DateTimeFormat.options](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/DateTimeFormat#parameters) parameter that specifies the formatting style to use for `localeString` format.\n\nNote that if the `displayIn` prop is set to `utc`, the value of `localeOptions.timeZone` will automatically be converted to `UTC`.\n\n#### `render`\n\nOptional callback that should render a template. The callback will be provided an object with properties/values related to the date expressed in `datetime`.\n\nBy default, the Bento Date Display component will display the [`localeString` form of the Date](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/toLocaleString) for the given locale and localeOption. See the [Returned Time Parameters section](#returned-time-parameters) for more details on how each property will be displayed.\n\n```typescript\n(dateParams: DateParams) => JSXInternal.Element\ninterface DateParams {\n  day: number;\n  dayName: string;\n  dayNameShort: string;\n  dayPeriod: string;\n  dayTwoDigit: string;\n  hour: number;\n  hour12: number;\n  hour12TwoDigit: string;\n  hourTwoDigit: string;\n  iso: string;\n  localeString: string;\n  minute: number;\n  minuteTwoDigit: string;\n  month: number;\n  monthName: string;\n  monthNameShort: string;\n  monthTwoDigit: string;\n  second: number;\n  secondTwoDigit: string;\n  timeZoneName: string;\n  timeZoneNameShort: string;\n  year: number;\n  yearTwoDi: string;\n}\n```\n\n### Returned Time Parameters\n\nThis table lists the format you can specify in your Mustache template:\n\n| Format            | Meaning                                                       |\n| ----------------- | ------------------------------------------------------------- |\n| day               | 1, 2, ...12, 13, etc.                                         |\n| dayName           | string,                                                       |\n| dayNameShort      | string,                                                       |\n| dayPeriod         | string,                                                       |\n| dayTwoDigit       | 01, 02, 03, ..., 12, 13, etc.                                 |\n| hour              | 0, 1, 2, 3, ..., 12, 13, ..., 22, 23                          |\n| hour12            | 1, 2, 3, ..., 12, 1, 2, ..., 11, 12                           |\n| hour12TwoDigit    | 01, 02, ..., 12, 01, 02, ..., 11, 12                          |\n| hourTwoDigit      | 00, 01, 02, ..., 12, 13, ..., 22, 23                          |\n| iso               | A standard ISO8601 date string e.g. 2019-01-23T15:31:21.213Z, |\n| localeString      | A string with a language sensitive representation.            |\n| minute            | 0, 1, 2, ..., 58, 59                                          |\n| minuteTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| month             | 1, 2, 3, ..., 12                                              |\n| monthName         | Internationalized month name string.                          |\n| monthNameShort    | Internationalized abbreviated month name string.,             |\n| monthTwoDigit     | 01, 02, ..., 11, 12                                           |\n| second            | 0, 1, 2, ..., 58, 59                                          |\n| secondTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| timeZoneName      | Internationalized timezone, like `Pacific Daylight Time`      |\n| timeZoneNameShort | Internationalized timezone, abbreviated, like `PST`           |\n| year              | 0, 1, 2, ..., 1999, 2000, 2001, etc.                          |\n| yearTwoDigit      | 00, 01, 02, ..., 17, 18, 19, ..., 98, 99                      |\n","readmeFilename":"README.md","gitHead":"737b882748278c09f4270720744c1618e36be6ba","bugs":{"url":"https://github.com/ampproject/amphtml/issues"},"_id":"@bentoproject/date-display@1.2201061922.0","_nodeVersion":"16.13.1","_npmVersion":"8.1.2","dist":{"integrity":"sha512-bfpWZfQBovM80VBPjF+1EbTRogs/0oCpB6im4FpoIMvO+Izsp67HOtWCnDnyNLTQdaGoPgu41tgVFNDAH9iMIA==","shasum":"cdb31381096fff98eb4691b00844c9425b62f558","tarball":"https://registry.npmjs.org/@bentoproject/date-display/-/date-display-1.2201061922.0.tgz","fileCount":27,"unpackedSize":917018,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJh2DK9CRA9TVsSAnZWagAAoKAQAKBcJGnlNFSenOn1s18n\n6ZXyIi0L6eMZe/MrNIHt25pa1oupTmTnr4wqAxIfzcq+gChaNW6ycSaluV+q\nQBIfxFm1buYKFQmn3PnBZtmDyDtC9fIqpLSdKitr0W8YnYcToRQk4iqpcAQO\nF1VpmEfnfjlXgQPlcIt9F63LwZVYaDQnjs+SZkSlGZyyPeLpTaO21qx7CRNp\nqJQbu7lyt7DBZ4f94EqtbhNkIOaM0UpB9zd0obsunopQ1wxxlqWnxb5Vj55W\n+mXX9M3bSfgASt/zzOBJvcwXguifoX/N0kUXPIBI4pRVvvgAngvBh2WwstjT\nUV0LHCPo1WvXJM7qzPVE0ZMllqk7VDlerBwgkQzJlpmx+rNwnXjE1uIjEVIe\njtK+YgdlPROYLeDP3ankf61YG4x3euWBIbUJIMXxjWU0i2VpkzMOhd0u1G/j\nJZzbkzLZV3P4euUs/YQn4NwiNJe2xTJnfqyyUfscGUaRG5e+OtnUtzOhYxoa\nyMlQLZ7cQaG8+y1KeBVQh0ZL0/RPX+2HL4yyN46UwyLjwcalnHClYSBF07pU\nITvMpZ9xbFm9dRP6iJdbZvhYZ4h8yIQp+0fNPd05OMVyxyMSQUCiRuPRPLkO\njgCwhAU4ADN6KIOR643dlOaAg0iqkIk2N9l/u6WWuHkNzT3FQDDyKlWDRYBg\ncYP5\r\n=mw75\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCAXzC3OOVCUNOFou3xxDuX7a51zzDnakSf8NtgyLGWfAIgBWpKkctSrfFlSjNe9SZFMOmdFVzSl1K3N6U2D18FveQ="}]},"_npmUser":{"name":"bentoprojectbot","email":"bentobot@amp.dev"},"directories":{},"maintainers":[{"name":"bentoprojectbot","email":"bentobot@amp.dev"},{"name":"kristoferbaxter","email":"kbax@me.com"},{"name":"esth","email":"esther@amp.dev"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/date-display_1.2201061922.0_1641558716645_0.9542142593699963"},"_hasShrinkwrap":false},"1.2201071715.0":{"name":"@bentoproject/date-display","version":"1.2201071715.0","description":"Displays time data that you can render in your page.","author":{"name":"Bento Authors"},"license":"Apache-2.0","main":"./dist/web-component.js","module":"./dist/web-component.module.js","exports":{".":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./web-component":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./preact":{"import":"./dist/component-preact.module.js","require":"./dist/component-preact.js"},"./react":{"import":"./dist/component-react.module.js","require":"./dist/component-react.js"}},"repository":{"type":"git","url":"git+https://github.com/ampproject/amphtml.git","directory":"extensions/amp-date-display/1.0"},"homepage":"https://github.com/ampproject/amphtml/tree/main/extensions/amp-date-display/1.0","peerDependencies":{"preact":"^10.2.1","react":"^17.0.0"},"readme":"# Bento Date Display\n\nDisplays time data that you can render in your page. By providing specific [attributes](#attributes) in the Bento Date Display tag, the Bento Date Display extension returns a list of time parameters, which you can pass to [an amp-mustache template](../../amp-mustache/amp-mustache.md) for rendering. Refer to the [list below for each returned time parameter](#returned-time-parameters).\n\n## Web Component\n\nWe don't support the web component version of `bento-date-display` since `<template>` support is still being designed. This effort can be tracked in this [issue](https://go.amp.dev/issue/36619).\n\n<!--\nAn older version of this file contains the removed section, though it's incorrect:\n\nhttps://github.com/ampproject/amphtml/blob/422d171e87571c4d125a2bf956e78e92444c10e8/extensions/amp-date-display/1.0/README.md\n-->\n\n---\n\n## Preact/React Component\n\n### Import via npm\n\n```sh\nnpm install @bentoproject/date-display\n```\n\n```javascript\nimport React from 'react';\nimport {BentoDateDisplay} from '@bentoproject/date-display/react';\nimport '@bentoproject/date-display/styles.css';\n\nfunction App() {\n  return (\n    <BentoDateDisplay\n      datetime={dateTime}\n      displayIn={displayIn}\n      locale={locale}\n      render={(date) => (\n        <div>{`ISO: ${date.iso}; locale: ${date.localeString}`}</div>\n      )}\n    />\n  );\n}\n```\n\n### Interactivity and API usage\n\nThe Bento Date Display component does not have an imperative API. However, the Bento Date Display Preact/React component does accept a `render` prop that renders the consumer's template. This `render` prop should be a function which the Bento Date Display Preact/React component can use to render its template. The `render` callback will be provided a variety of date-related parameters for consumers to interpolate in the rendered template. See the [`render` prop section](#render) for more information.\n\n### Layout and style\n\nThe Bento Date Display Preact/React component allows consumers to render their own templates. These templates may use inline styles, `<style>` tags, Preact/React components that import their own stylesheets.\n\n### Props\n\n#### `datetime`\n\nRequired prop. Denotes the date and time as a Date, String, or Nuumber. If String, must be a standard ISO 8601 date string (e.g. 2017-08-02T15:05:05.000Z) or the string `now`. If set to `now`, it will use the time the page loaded to render its template. If Number, must be a POSIX epoch value in milliseconds.\n\n#### `displayIn`\n\nOptional prop that can be either `\"utc\"` or `\"local\"` and defaults to `\"local\"`. This prop indicates what timezone to display the date in. If set to the value `\"utc\"`, the component will convert the given date to UTC.\n\n#### `locale`\n\nAn internationalization language string for each timer unit. The default value is `en` (for English). This prop supports all values that are supported by the user's browser.\n\n#### `localeOptions`\n\nThe `localeOptions` object supports all the options under [Intl.DateTimeFormat.options](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/DateTimeFormat#parameters) parameter that specifies the formatting style to use for `localeString` format.\n\nNote that if the `displayIn` prop is set to `utc`, the value of `localeOptions.timeZone` will automatically be converted to `UTC`.\n\n#### `render`\n\nOptional callback that should render a template. The callback will be provided an object with properties/values related to the date expressed in `datetime`.\n\nBy default, the Bento Date Display component will display the [`localeString` form of the Date](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/toLocaleString) for the given locale and localeOption. See the [Returned Time Parameters section](#returned-time-parameters) for more details on how each property will be displayed.\n\n```typescript\n(dateParams: DateParams) => JSXInternal.Element\ninterface DateParams {\n  day: number;\n  dayName: string;\n  dayNameShort: string;\n  dayPeriod: string;\n  dayTwoDigit: string;\n  hour: number;\n  hour12: number;\n  hour12TwoDigit: string;\n  hourTwoDigit: string;\n  iso: string;\n  localeString: string;\n  minute: number;\n  minuteTwoDigit: string;\n  month: number;\n  monthName: string;\n  monthNameShort: string;\n  monthTwoDigit: string;\n  second: number;\n  secondTwoDigit: string;\n  timeZoneName: string;\n  timeZoneNameShort: string;\n  year: number;\n  yearTwoDi: string;\n}\n```\n\n### Returned Time Parameters\n\nThis table lists the format you can specify in your Mustache template:\n\n| Format            | Meaning                                                       |\n| ----------------- | ------------------------------------------------------------- |\n| day               | 1, 2, ...12, 13, etc.                                         |\n| dayName           | string,                                                       |\n| dayNameShort      | string,                                                       |\n| dayPeriod         | string,                                                       |\n| dayTwoDigit       | 01, 02, 03, ..., 12, 13, etc.                                 |\n| hour              | 0, 1, 2, 3, ..., 12, 13, ..., 22, 23                          |\n| hour12            | 1, 2, 3, ..., 12, 1, 2, ..., 11, 12                           |\n| hour12TwoDigit    | 01, 02, ..., 12, 01, 02, ..., 11, 12                          |\n| hourTwoDigit      | 00, 01, 02, ..., 12, 13, ..., 22, 23                          |\n| iso               | A standard ISO8601 date string e.g. 2019-01-23T15:31:21.213Z, |\n| localeString      | A string with a language sensitive representation.            |\n| minute            | 0, 1, 2, ..., 58, 59                                          |\n| minuteTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| month             | 1, 2, 3, ..., 12                                              |\n| monthName         | Internationalized month name string.                          |\n| monthNameShort    | Internationalized abbreviated month name string.,             |\n| monthTwoDigit     | 01, 02, ..., 11, 12                                           |\n| second            | 0, 1, 2, ..., 58, 59                                          |\n| secondTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| timeZoneName      | Internationalized timezone, like `Pacific Daylight Time`      |\n| timeZoneNameShort | Internationalized timezone, abbreviated, like `PST`           |\n| year              | 0, 1, 2, ..., 1999, 2000, 2001, etc.                          |\n| yearTwoDigit      | 00, 01, 02, ..., 17, 18, 19, ..., 98, 99                      |\n","readmeFilename":"README.md","gitHead":"e40a24fdddceb1c635f67571d9cf513c7e58800e","bugs":{"url":"https://github.com/ampproject/amphtml/issues"},"_id":"@bentoproject/date-display@1.2201071715.0","_nodeVersion":"16.13.1","_npmVersion":"8.1.2","dist":{"integrity":"sha512-P/iVr7ojE9a28Ti5MnqySpINEVf53gdvr/c5Z2yRCbyNrNWxtAx/fvu1jmXyBvh1EVFIMukLwYM1eZStL0UwGg==","shasum":"5fe807ed4ec6c311028144ffbe8a36ced9299b6a","tarball":"https://registry.npmjs.org/@bentoproject/date-display/-/date-display-1.2201071715.0.tgz","fileCount":27,"unpackedSize":917018,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJh2YHVCRA9TVsSAnZWagAAyakQAJUN8s6cWmTPmUaaIBZm\noiekY0OwaAO54RffPKouGrxSGQ+Cd3upUK6vFf9pZ7PaTqUJOUkR4s1sqtwP\nSUTANDKi2CkE9ZoQl0wrP1EyjrPkQGf5VRfdhNt/5RmM+w3xwly8QdgHL+u9\nIIZKoDJ68G4WWwEuGLBI3Lz7YH21JScTd5bJcrYBzRHZ3RUfnX4Ibbsp7lBG\n8jO5L7NJFHv2URCIhEynS3i+HkVhCORSK5rGVTIzoB9v30rOE3k4nwlG34D4\nqiFsfLW6+IfeASjuUj8GLjsJDiqiF9ojoTsYwp45ICdv12+ZfnUX9bIiiIkC\nid+aOY+SqkfuI4GpNhFcJhA8njabgV0RZuiqFppvYczGxvLOgKhRCDpPw/kj\n5wt0gCpVi2tMMJpQdXDUbzfCeevAFOqFGmFcxus3mutKfsnYfYfFV1iVrLpU\ncl9YKHYk6HlyBSxDxApSp0N3sXGEEUh1bm7mXnNqj17kC6BDw3lt/XfgAJPq\nueK5vu9ojF2ie+JE5mfXxqekF8NV+XCdS8rQEo/lmzcVqsc+CPDkqHT9CDay\nKNtjBqhiCOuZpzlzdXwkXLNjrfFYKfElC1LQA5gJSwP5Sxb+IF7z5xL00EDq\nF69cjEB09jplephqHYl5rKgqg+axM6PgYNTeK0lTgbBOlrxPO8FfU79vCsV3\nYUdg\r\n=XF2n\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDV3bvkffcL6AAuEd8F9wxwveR0tP6syAEsrVQlQhumLAIhAMeEU3ljhSPyMlvAFsHRZAFs3+p4JHfkT9YENZnVZf2V"}]},"_npmUser":{"name":"bentoprojectbot","email":"bentobot@amp.dev"},"directories":{},"maintainers":[{"name":"bentoprojectbot","email":"bentobot@amp.dev"},{"name":"kristoferbaxter","email":"kbax@me.com"},{"name":"esth","email":"esther@amp.dev"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/date-display_1.2201071715.0_1641644501378_0.42513149706187914"},"_hasShrinkwrap":false},"1.2201101902.0":{"name":"@bentoproject/date-display","version":"1.2201101902.0","description":"Displays time data that you can render in your page.","author":{"name":"Bento Authors"},"license":"Apache-2.0","main":"./dist/web-component.js","module":"./dist/web-component.module.js","exports":{".":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./web-component":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./preact":{"import":"./dist/component-preact.module.js","require":"./dist/component-preact.js"},"./react":{"import":"./dist/component-react.module.js","require":"./dist/component-react.js"}},"repository":{"type":"git","url":"git+https://github.com/ampproject/amphtml.git","directory":"extensions/amp-date-display/1.0"},"homepage":"https://github.com/ampproject/amphtml/tree/main/extensions/amp-date-display/1.0","peerDependencies":{"preact":"^10.2.1","react":"^17.0.0"},"readme":"# Bento Date Display\n\nDisplays time data that you can render in your page. By providing specific [attributes](#attributes) in the Bento Date Display tag, the Bento Date Display extension returns a list of time parameters, which you can pass to [an amp-mustache template](../../amp-mustache/amp-mustache.md) for rendering. Refer to the [list below for each returned time parameter](#returned-time-parameters).\n\n## Web Component\n\nWe don't support the web component version of `bento-date-display` since `<template>` support is still being designed. This effort can be tracked in this [issue](https://go.amp.dev/issue/36619).\n\n<!--\nAn older version of this file contains the removed section, though it's incorrect:\n\nhttps://github.com/ampproject/amphtml/blob/422d171e87571c4d125a2bf956e78e92444c10e8/extensions/amp-date-display/1.0/README.md\n-->\n\n---\n\n## Preact/React Component\n\n### Import via npm\n\n```sh\nnpm install @bentoproject/date-display\n```\n\n```javascript\nimport React from 'react';\nimport {BentoDateDisplay} from '@bentoproject/date-display/react';\nimport '@bentoproject/date-display/styles.css';\n\nfunction App() {\n  return (\n    <BentoDateDisplay\n      datetime={dateTime}\n      displayIn={displayIn}\n      locale={locale}\n      render={(date) => (\n        <div>{`ISO: ${date.iso}; locale: ${date.localeString}`}</div>\n      )}\n    />\n  );\n}\n```\n\n### Interactivity and API usage\n\nThe Bento Date Display component does not have an imperative API. However, the Bento Date Display Preact/React component does accept a `render` prop that renders the consumer's template. This `render` prop should be a function which the Bento Date Display Preact/React component can use to render its template. The `render` callback will be provided a variety of date-related parameters for consumers to interpolate in the rendered template. See the [`render` prop section](#render) for more information.\n\n### Layout and style\n\nThe Bento Date Display Preact/React component allows consumers to render their own templates. These templates may use inline styles, `<style>` tags, Preact/React components that import their own stylesheets.\n\n### Props\n\n#### `datetime`\n\nRequired prop. Denotes the date and time as a Date, String, or Nuumber. If String, must be a standard ISO 8601 date string (e.g. 2017-08-02T15:05:05.000Z) or the string `now`. If set to `now`, it will use the time the page loaded to render its template. If Number, must be a POSIX epoch value in milliseconds.\n\n#### `displayIn`\n\nOptional prop that can be either `\"utc\"` or `\"local\"` and defaults to `\"local\"`. This prop indicates what timezone to display the date in. If set to the value `\"utc\"`, the component will convert the given date to UTC.\n\n#### `locale`\n\nAn internationalization language string for each timer unit. The default value is `en` (for English). This prop supports all values that are supported by the user's browser.\n\n#### `localeOptions`\n\nThe `localeOptions` object supports all the options under [Intl.DateTimeFormat.options](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/DateTimeFormat#parameters) parameter that specifies the formatting style to use for `localeString` format.\n\nNote that if the `displayIn` prop is set to `utc`, the value of `localeOptions.timeZone` will automatically be converted to `UTC`.\n\n#### `render`\n\nOptional callback that should render a template. The callback will be provided an object with properties/values related to the date expressed in `datetime`.\n\nBy default, the Bento Date Display component will display the [`localeString` form of the Date](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/toLocaleString) for the given locale and localeOption. See the [Returned Time Parameters section](#returned-time-parameters) for more details on how each property will be displayed.\n\n```typescript\n(dateParams: DateParams) => JSXInternal.Element\ninterface DateParams {\n  day: number;\n  dayName: string;\n  dayNameShort: string;\n  dayPeriod: string;\n  dayTwoDigit: string;\n  hour: number;\n  hour12: number;\n  hour12TwoDigit: string;\n  hourTwoDigit: string;\n  iso: string;\n  localeString: string;\n  minute: number;\n  minuteTwoDigit: string;\n  month: number;\n  monthName: string;\n  monthNameShort: string;\n  monthTwoDigit: string;\n  second: number;\n  secondTwoDigit: string;\n  timeZoneName: string;\n  timeZoneNameShort: string;\n  year: number;\n  yearTwoDi: string;\n}\n```\n\n### Returned Time Parameters\n\nThis table lists the format you can specify in your Mustache template:\n\n| Format            | Meaning                                                       |\n| ----------------- | ------------------------------------------------------------- |\n| day               | 1, 2, ...12, 13, etc.                                         |\n| dayName           | string,                                                       |\n| dayNameShort      | string,                                                       |\n| dayPeriod         | string,                                                       |\n| dayTwoDigit       | 01, 02, 03, ..., 12, 13, etc.                                 |\n| hour              | 0, 1, 2, 3, ..., 12, 13, ..., 22, 23                          |\n| hour12            | 1, 2, 3, ..., 12, 1, 2, ..., 11, 12                           |\n| hour12TwoDigit    | 01, 02, ..., 12, 01, 02, ..., 11, 12                          |\n| hourTwoDigit      | 00, 01, 02, ..., 12, 13, ..., 22, 23                          |\n| iso               | A standard ISO8601 date string e.g. 2019-01-23T15:31:21.213Z, |\n| localeString      | A string with a language sensitive representation.            |\n| minute            | 0, 1, 2, ..., 58, 59                                          |\n| minuteTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| month             | 1, 2, 3, ..., 12                                              |\n| monthName         | Internationalized month name string.                          |\n| monthNameShort    | Internationalized abbreviated month name string.,             |\n| monthTwoDigit     | 01, 02, ..., 11, 12                                           |\n| second            | 0, 1, 2, ..., 58, 59                                          |\n| secondTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| timeZoneName      | Internationalized timezone, like `Pacific Daylight Time`      |\n| timeZoneNameShort | Internationalized timezone, abbreviated, like `PST`           |\n| year              | 0, 1, 2, ..., 1999, 2000, 2001, etc.                          |\n| yearTwoDigit      | 00, 01, 02, ..., 17, 18, 19, ..., 98, 99                      |\n","readmeFilename":"README.md","gitHead":"f0b7ffe685c60b51cfbab92bada4e0c87e0377a1","bugs":{"url":"https://github.com/ampproject/amphtml/issues"},"_id":"@bentoproject/date-display@1.2201101902.0","_nodeVersion":"16.13.1","_npmVersion":"8.1.2","dist":{"integrity":"sha512-IB50Zu77v6leR3+moubsBTXRNoTAV+iTo+vAf8kTxpzREqPdmjatMiFo9T0nJ8tfxpHq4CHs4MwuB6k7YXVyZg==","shasum":"ab39209dcf86011e7c4f45e7183de9e9da837c62","tarball":"https://registry.npmjs.org/@bentoproject/date-display/-/date-display-1.2201101902.0.tgz","fileCount":27,"unpackedSize":917018,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJh3XgvCRA9TVsSAnZWagAAA0MP/0hNSn6moMn0kx49PI7V\nb5KgMyOAhZjGlNLKwBFw2D9WvYzOE7A84NJPIHMCTkiuYs4aSVKw+Wt0IAi9\nYRdMUC+BRR7hPk9OHpN4Jbw+Haf01bQFt6myVkrpH+y8aHq/EJjFklWAW1wi\nNHP0vixRAqLUG9n2hJ+5f7WJexEkuFLq5Dog4Axf6m8FB2xCeb0JyVPzb2Gk\nomohy2crDKQBPwflRuRTqAC1t9YW6dqUhN3kigLotov+YcCw0rM59rzgvhXw\nHOrJnQMi59KTLlYoqM6EIWIR2j+YM+mmZkSl/EgiYBUFlPYuBrmBY7MgCyU8\nkHvDUJLCP0b0+6sT7fX48mO3lh+vYkL6LmleRnfn/GgibQiVzP82BlsLe0ip\nW/jV1E5OKQrqwJbTfLALIhUCTeCOgxLM9DRTAJbkc2MlTjsJuxaw5DwZpqdl\n2CKe9tcLwkXuHZwdhXEd70XuoRQA+j6xmyZUVyj5ZSy8GG6uj9uOio8ZmN/n\nFF6bVE7kp9wmlFpNZYt1+VKY8tRAU5Be5YuHHA9mt7+KnadXAwWHLir/PI6W\ntXNClmKW6vdRE65HW4ahfG8JFL+x4CDsbloH7w9Pphg6R7Fy/eElBTWul16v\nDKafV9KVvl90PHfO4/T91t1fmCielxEh6Z/OnF8Fm+vwvBip8xJ5npQ40cWu\n67oK\r\n=BE0n\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQC4YzuUulRNt2pC1KbdIHX15YtJ8N9r243uLXxvC3jyCQIhANBaa0orV6dyzFg7mLxIL0F78Z7BVb/1WuaorLevB6yb"}]},"_npmUser":{"name":"bentoprojectbot","email":"bentobot@amp.dev"},"directories":{},"maintainers":[{"name":"bentoprojectbot","email":"bentobot@amp.dev"},{"name":"kristoferbaxter","email":"kbax@me.com"},{"name":"esth","email":"esther@amp.dev"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/date-display_1.2201101902.0_1641904175580_0.21745762303450666"},"_hasShrinkwrap":false},"1.2112231523.1":{"name":"@bentoproject/date-display","version":"1.2112231523.1","description":"Displays time data that you can render in your page.","author":{"name":"Bento Authors"},"license":"Apache-2.0","main":"./dist/web-component.js","module":"./dist/web-component.module.js","exports":{".":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./web-component":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./preact":{"import":"./dist/component-preact.module.js","require":"./dist/component-preact.js"},"./react":{"import":"./dist/component-react.module.js","require":"./dist/component-react.js"}},"repository":{"type":"git","url":"git+https://github.com/ampproject/amphtml.git","directory":"extensions/amp-date-display/1.0"},"homepage":"https://github.com/ampproject/amphtml/tree/main/extensions/amp-date-display/1.0","peerDependencies":{"preact":"^10.2.1","react":"^17.0.0"},"gitHead":"1ba2e6854831868cfbd5aecf8a74b09bb0fbc2ce","bugs":{"url":"https://github.com/ampproject/amphtml/issues"},"_id":"@bentoproject/date-display@1.2112231523.1","_nodeVersion":"16.13.1","_npmVersion":"8.1.2","dist":{"integrity":"sha512-T56yDlBLOKu2ynnnGV8DtUkSjaf2DzSvu9EGswqnHyUuUYDQInU/TPJ0yezdG8/z52z5Jv5SKnKSNURCROre0Q==","shasum":"4134983d4f8372c877e53143c25a97b8794438fa","tarball":"https://registry.npmjs.org/@bentoproject/date-display/-/date-display-1.2112231523.1.tgz","fileCount":27,"unpackedSize":917018,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJh3dmGCRA9TVsSAnZWagAAe20P+wXnPhXUuel6nvZhSKgo\n3U+oLCybdcqoTB84Z3p5an9U1tl6QjHiUvwYxUNh6cjEdyL7IEATN+K4q3JR\n9NKFJTxl4sM2krMJa9LbY05sbEL+vBZS/lRDsaVWDGU01Yt1gW7esu6Cwich\nUBG65KxM5G+booTojfEHw1MkCt4fbWkDE6I/xnRv60gEATn5LIfaOB2eBuXg\neCSCT4jiVdn+9QVnC4QmormbAkjgIws9WYjum4409+PTlN8gYQY6kybSn2cD\nWr7Y94I+WxOHXwkx09bqhVBPPhrkG7KKuCq8CgkLtZmgLcuBwlcz7bLcWiu0\nV5cP/HjthXEJAQrSy1RkVwg2Of8edKam/KfdwY8bAJGyzz7L8n3kmKpdJta+\nA3rACTFsAB0yW91/W5yW10KhJaHqTnAb8+VSp6E19suJewdefC4arbXQYSm6\nYmK3ItuVfswGRDZ/AD+FqDa6IA6aA3p7dITg3yuQoflLars6I54SUHRVo5vy\nEVd1Hft4+0WC8xAp6b898Kj2dEwkTCfnCZjKVVw/rkGGUEEfzbLnL34+VQ9d\nxkkb8hEQLAnTfgwU8DlsaT8obiQxy0HqQsw87RVmvs2IHoYhmpYao8w7TuZS\n49PgbsOVM6mg3LZ+U7wrnvrPgVx8STG4X+YwBSna2gkiLdZgXVwR6eC4g1lO\nXOgu\r\n=KolW\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCo6/MOYYaH0mmSY5Laf+RxHYwt5fIkhKnhB1g/nRfZ+QIhAKEO+JgByDQdBWIECh4uFadnCa+3uPWtimA0tpa5EvGF"}]},"_npmUser":{"name":"bentoprojectbot","email":"bentobot@amp.dev"},"directories":{},"maintainers":[{"name":"bentoprojectbot","email":"bentobot@amp.dev"},{"name":"kristoferbaxter","email":"kbax@me.com"},{"name":"esth","email":"esther@amp.dev"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/date-display_1.2112231523.1_1641929094634_0.5137638979999481"},"_hasShrinkwrap":false},"1.2201120015.0":{"name":"@bentoproject/date-display","version":"1.2201120015.0","description":"Displays time data that you can render in your page.","author":{"name":"Bento Authors"},"license":"Apache-2.0","main":"./dist/web-component.js","module":"./dist/web-component.module.js","exports":{".":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./web-component":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./preact":{"import":"./dist/component-preact.module.js","require":"./dist/component-preact.js"},"./react":{"import":"./dist/component-react.module.js","require":"./dist/component-react.js"}},"repository":{"type":"git","url":"git+https://github.com/ampproject/amphtml.git","directory":"extensions/amp-date-display/1.0"},"homepage":"https://github.com/ampproject/amphtml/tree/main/extensions/amp-date-display/1.0","peerDependencies":{"preact":"^10.2.1","react":"^17.0.0"},"readme":"# Bento Date Display\n\nDisplays time data that you can render in your page. By providing specific [attributes](#attributes) in the Bento Date Display tag, the Bento Date Display extension returns a list of time parameters, which you can pass to [an amp-mustache template](../../amp-mustache/amp-mustache.md) for rendering. Refer to the [list below for each returned time parameter](#returned-time-parameters).\n\n## Web Component\n\nWe don't support the web component version of `bento-date-display` since `<template>` support is still being designed. This effort can be tracked in this [issue](https://go.amp.dev/issue/36619).\n\n<!--\nAn older version of this file contains the removed section, though it's incorrect:\n\nhttps://github.com/ampproject/amphtml/blob/422d171e87571c4d125a2bf956e78e92444c10e8/extensions/amp-date-display/1.0/README.md\n-->\n\n---\n\n## Preact/React Component\n\n### Import via npm\n\n```sh\nnpm install @bentoproject/date-display\n```\n\n```javascript\nimport React from 'react';\nimport {BentoDateDisplay} from '@bentoproject/date-display/react';\nimport '@bentoproject/date-display/styles.css';\n\nfunction App() {\n  return (\n    <BentoDateDisplay\n      datetime={dateTime}\n      displayIn={displayIn}\n      locale={locale}\n      render={(date) => (\n        <div>{`ISO: ${date.iso}; locale: ${date.localeString}`}</div>\n      )}\n    />\n  );\n}\n```\n\n### Interactivity and API usage\n\nThe Bento Date Display component does not have an imperative API. However, the Bento Date Display Preact/React component does accept a `render` prop that renders the consumer's template. This `render` prop should be a function which the Bento Date Display Preact/React component can use to render its template. The `render` callback will be provided a variety of date-related parameters for consumers to interpolate in the rendered template. See the [`render` prop section](#render) for more information.\n\n### Layout and style\n\nThe Bento Date Display Preact/React component allows consumers to render their own templates. These templates may use inline styles, `<style>` tags, Preact/React components that import their own stylesheets.\n\n### Props\n\n#### `datetime`\n\nRequired prop. Denotes the date and time as a Date, String, or Nuumber. If String, must be a standard ISO 8601 date string (e.g. 2017-08-02T15:05:05.000Z) or the string `now`. If set to `now`, it will use the time the page loaded to render its template. If Number, must be a POSIX epoch value in milliseconds.\n\n#### `displayIn`\n\nOptional prop that can be either `\"utc\"` or `\"local\"` and defaults to `\"local\"`. This prop indicates what timezone to display the date in. If set to the value `\"utc\"`, the component will convert the given date to UTC.\n\n#### `locale`\n\nAn internationalization language string for each timer unit. The default value is `en` (for English). This prop supports all values that are supported by the user's browser.\n\n#### `localeOptions`\n\nThe `localeOptions` object supports all the options under [Intl.DateTimeFormat.options](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/DateTimeFormat#parameters) parameter that specifies the formatting style to use for `localeString` format.\n\nNote that if the `displayIn` prop is set to `utc`, the value of `localeOptions.timeZone` will automatically be converted to `UTC`.\n\n#### `render`\n\nOptional callback that should render a template. The callback will be provided an object with properties/values related to the date expressed in `datetime`.\n\nBy default, the Bento Date Display component will display the [`localeString` form of the Date](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/toLocaleString) for the given locale and localeOption. See the [Returned Time Parameters section](#returned-time-parameters) for more details on how each property will be displayed.\n\n```typescript\n(dateParams: DateParams) => JSXInternal.Element\ninterface DateParams {\n  day: number;\n  dayName: string;\n  dayNameShort: string;\n  dayPeriod: string;\n  dayTwoDigit: string;\n  hour: number;\n  hour12: number;\n  hour12TwoDigit: string;\n  hourTwoDigit: string;\n  iso: string;\n  localeString: string;\n  minute: number;\n  minuteTwoDigit: string;\n  month: number;\n  monthName: string;\n  monthNameShort: string;\n  monthTwoDigit: string;\n  second: number;\n  secondTwoDigit: string;\n  timeZoneName: string;\n  timeZoneNameShort: string;\n  year: number;\n  yearTwoDi: string;\n}\n```\n\n### Returned Time Parameters\n\nThis table lists the format you can specify in your Mustache template:\n\n| Format            | Meaning                                                       |\n| ----------------- | ------------------------------------------------------------- |\n| day               | 1, 2, ...12, 13, etc.                                         |\n| dayName           | string,                                                       |\n| dayNameShort      | string,                                                       |\n| dayPeriod         | string,                                                       |\n| dayTwoDigit       | 01, 02, 03, ..., 12, 13, etc.                                 |\n| hour              | 0, 1, 2, 3, ..., 12, 13, ..., 22, 23                          |\n| hour12            | 1, 2, 3, ..., 12, 1, 2, ..., 11, 12                           |\n| hour12TwoDigit    | 01, 02, ..., 12, 01, 02, ..., 11, 12                          |\n| hourTwoDigit      | 00, 01, 02, ..., 12, 13, ..., 22, 23                          |\n| iso               | A standard ISO8601 date string e.g. 2019-01-23T15:31:21.213Z, |\n| localeString      | A string with a language sensitive representation.            |\n| minute            | 0, 1, 2, ..., 58, 59                                          |\n| minuteTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| month             | 1, 2, 3, ..., 12                                              |\n| monthName         | Internationalized month name string.                          |\n| monthNameShort    | Internationalized abbreviated month name string.,             |\n| monthTwoDigit     | 01, 02, ..., 11, 12                                           |\n| second            | 0, 1, 2, ..., 58, 59                                          |\n| secondTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| timeZoneName      | Internationalized timezone, like `Pacific Daylight Time`      |\n| timeZoneNameShort | Internationalized timezone, abbreviated, like `PST`           |\n| year              | 0, 1, 2, ..., 1999, 2000, 2001, etc.                          |\n| yearTwoDigit      | 00, 01, 02, ..., 17, 18, 19, ..., 98, 99                      |\n","readmeFilename":"README.md","gitHead":"c592aa0f3999a8b6109a8a31a07cae6a83115d8e","bugs":{"url":"https://github.com/ampproject/amphtml/issues"},"_id":"@bentoproject/date-display@1.2201120015.0","_nodeVersion":"16.13.1","_npmVersion":"8.1.2","dist":{"integrity":"sha512-2cYoxapeg7oFcaXKUVp5+1tRCt6pfBvRTvCp/lKqM2W0x8lNKzVEpCcqLIqwxarDWoYLhriuSV4skacQ8fhXOw==","shasum":"2cb4ada71ffac9f81b3b6f8b029303da2d87ad77","tarball":"https://registry.npmjs.org/@bentoproject/date-display/-/date-display-1.2201120015.0.tgz","fileCount":27,"unpackedSize":900614,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJh3sncCRA9TVsSAnZWagAA+ggP/0gxitHb72v4i8vD8aaY\nlD8brtk1d8Kw+kNG2tTNxP9hhyQq+JCznMxXBV1QLm+azLuteaVlAkDtQY0Z\nZxx3s5/mlEzWYlGMRAg/4AmL2ok3s+HhcdqtnsmYfyfBX/RBR8C1GW9dwxNS\nG9B4MP02VsqL+D5azURnvN/sRUdFaqc+ReD3gvOH1Vr6wjz7oQjS5R6FE6mz\nsNaMOTFo1xGO5OVewZAnZtEkW+5eZ7TvMY3tJZWF+Ac9/4bm+EvbCqE7a2zw\nkS29kvt7zjKxyk4DcIaIgaQ8KXiSXgueluxVkReSBsykdVA1uR2DjbHFfRyF\ni2DvEtc8WM59OIJ4ppc26WrlmY3Z+8H6KovliJytkWXR7VIqjFTHhUyEdf7W\n8+RgWbWndAJi5pQ+FKLhdaYFo5iVw4vsrmZlsnHvVbjyyf//a3pS8a+2I6iG\nIqamy4gykLp4Lcc6wcwDflW7nNiCfj88DkPnH3ic5SV0p9l7vBzjrBGFHuTj\nxUD2ap6vp6YsEqi/NKBzGDtRlQQJufQIyBJZH0LAf7pS1Fu1CiIrCzIOI+7e\nti6DazVI1y5lQe3qZQXfEt4iZLFS1pKiLOefpvD+ndtErSLgvIpebEBY59G+\nads6G1H75JskViIZPHrTvBIohugLjLgBLTVbdTprADHFAx9XQjxgpsUGS+yY\nqaBr\r\n=zRhk\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIHjOeUyIhpFJBynK2OxHBEDPWBR1N750JEoGj4qzd1xUAiEAxxnMZT2wAMtDtCynJ0AMBxpdg3vvbzDlTGv6sRTuSPk="}]},"_npmUser":{"name":"bentoprojectbot","email":"bentobot@amp.dev"},"directories":{},"maintainers":[{"name":"bentoprojectbot","email":"bentobot@amp.dev"},{"name":"kristoferbaxter","email":"kbax@me.com"},{"name":"esth","email":"esther@amp.dev"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/date-display_1.2201120015.0_1641990619776_0.41252340624967787"},"_hasShrinkwrap":false},"1.2112231523.2":{"name":"@bentoproject/date-display","version":"1.2112231523.2","description":"Displays time data that you can render in your page.","author":{"name":"Bento Authors"},"license":"Apache-2.0","main":"./dist/web-component.js","module":"./dist/web-component.module.js","exports":{".":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./web-component":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./preact":{"import":"./dist/component-preact.module.js","require":"./dist/component-preact.js"},"./react":{"import":"./dist/component-react.module.js","require":"./dist/component-react.js"}},"repository":{"type":"git","url":"git+https://github.com/ampproject/amphtml.git","directory":"extensions/amp-date-display/1.0"},"homepage":"https://github.com/ampproject/amphtml/tree/main/extensions/amp-date-display/1.0","peerDependencies":{"preact":"^10.2.1","react":"^17.0.0"},"gitHead":"036fd40f8ecb160f2d6c65688c6ff4765a670bf8","bugs":{"url":"https://github.com/ampproject/amphtml/issues"},"_id":"@bentoproject/date-display@1.2112231523.2","_nodeVersion":"16.13.1","_npmVersion":"8.1.2","dist":{"integrity":"sha512-agHJLMtBmDaJ9CQKXdTfvkIubBTEvGzfyYIEiy1FUZyr5e/ttMDrdckQIxQjF0ZcgSzKVKPofPl/lZUwbkpX2Q==","shasum":"5c599aceda26590b663edb981d61a3067968e921","tarball":"https://registry.npmjs.org/@bentoproject/date-display/-/date-display-1.2112231523.2.tgz","fileCount":27,"unpackedSize":896956,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJh31h6CRA9TVsSAnZWagAADQAP/i6nd762s+BMwGPKQ6Qg\nNLhMpbcwN1lnQRM6T6PCW2zwUZStcP02ojp1/J2uuX2sss/P1vhhHDTOvZgd\nO0/iuSjZrPUQA8m0PAdYTW6VzhGHp9fLexnRfZ9C/AUJ7A2jO9IhCxAavYTX\nPIM8f08FglDuUTT7IbGdmWUU1/ucQiJK4Ez8vmvKppg+CsHg+jolKrxABsso\nwnmSzAQnZwRiFQf+Hghg6E22Ezn2+xvJoSO18N0PhcSMYjMj2P77oyUQs+oF\nG5t6aVn/eseAFA07eupTmeUB4tyzGikOfxSkydhl1lf1aG+qMUQa8dfffH8h\nqdSM+jd/ElhWwOHDYmVVOvyU7mxF5AlCTsKp3qzlVgSbL0JP6LqRPuYsKJrb\n8GE8sY6IaAPhYTSSJmJTr+NvgObIef6X8TbnZBkM9CukEpcgpVEg4blozsZ5\neMLLP7lCzdU73PCruz5+fUZyfEQ3KUpBewtj7mV9fZfKyUD0FPB6sdNa6mQj\npbhaiBojWJBcPkJHm+oB8YSYS4NRodne2HGMY4u5ecSaEF6R3kUpIC0C9fFe\nk9AUF65S2lMTU4ksBDk9d66DPGN3VRR8J6nYjpm0WCm/ArclHV4k52p53/FF\n5aJfH2A0VcTI2tYAwnm1lFynoyfsT4d2aNdcmS7Sr/Qmb/To3NB1R/MpaeQm\nzHKp\r\n=qM5d\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDT/GqARQ/lTMvWyjilAHhTcQ1Gy3EgWUkf6E5DjmVEkQIhAOsojhlcL/zCf7TA2UTJDPi+P+WtR1p2lg3WcNY1pdah"}]},"_npmUser":{"name":"bentoprojectbot","email":"bentobot@amp.dev"},"directories":{},"maintainers":[{"name":"bentoprojectbot","email":"bentobot@amp.dev"},{"name":"kristoferbaxter","email":"kbax@me.com"},{"name":"esth","email":"esther@amp.dev"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/date-display_1.2112231523.2_1642027130427_0.59475438921979"},"_hasShrinkwrap":false},"1.2201122239.0":{"name":"@bentoproject/date-display","version":"1.2201122239.0","description":"Displays time data that you can render in your page.","author":{"name":"Bento Authors"},"license":"Apache-2.0","main":"./dist/web-component.js","module":"./dist/web-component.module.js","exports":{".":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./web-component":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./preact":{"import":"./dist/component-preact.module.js","require":"./dist/component-preact.js"},"./react":{"import":"./dist/component-react.module.js","require":"./dist/component-react.js"}},"repository":{"type":"git","url":"git+https://github.com/ampproject/amphtml.git","directory":"extensions/amp-date-display/1.0"},"homepage":"https://github.com/ampproject/amphtml/tree/main/extensions/amp-date-display/1.0","peerDependencies":{"preact":"^10.2.1","react":"^17.0.0"},"readme":"# Bento Date Display\n\nDisplays time data that you can render in your page. By providing specific [attributes](#attributes) in the Bento Date Display tag, the Bento Date Display extension returns a list of time parameters, which you can pass to [an amp-mustache template](../../amp-mustache/amp-mustache.md) for rendering. Refer to the [list below for each returned time parameter](#returned-time-parameters).\n\n## Web Component\n\nWe don't support the web component version of `bento-date-display` since `<template>` support is still being designed. This effort can be tracked in this [issue](https://go.amp.dev/issue/36619).\n\n<!--\nAn older version of this file contains the removed section, though it's incorrect:\n\nhttps://github.com/ampproject/amphtml/blob/422d171e87571c4d125a2bf956e78e92444c10e8/extensions/amp-date-display/1.0/README.md\n-->\n\n---\n\n## Preact/React Component\n\n### Import via npm\n\n```sh\nnpm install @bentoproject/date-display\n```\n\n```javascript\nimport React from 'react';\nimport {BentoDateDisplay} from '@bentoproject/date-display/react';\nimport '@bentoproject/date-display/styles.css';\n\nfunction App() {\n  return (\n    <BentoDateDisplay\n      datetime={dateTime}\n      displayIn={displayIn}\n      locale={locale}\n      render={(date) => (\n        <div>{`ISO: ${date.iso}; locale: ${date.localeString}`}</div>\n      )}\n    />\n  );\n}\n```\n\n### Interactivity and API usage\n\nThe Bento Date Display component does not have an imperative API. However, the Bento Date Display Preact/React component does accept a `render` prop that renders the consumer's template. This `render` prop should be a function which the Bento Date Display Preact/React component can use to render its template. The `render` callback will be provided a variety of date-related parameters for consumers to interpolate in the rendered template. See the [`render` prop section](#render) for more information.\n\n### Layout and style\n\nThe Bento Date Display Preact/React component allows consumers to render their own templates. These templates may use inline styles, `<style>` tags, Preact/React components that import their own stylesheets.\n\n### Props\n\n#### `datetime`\n\nRequired prop. Denotes the date and time as a Date, String, or Nuumber. If String, must be a standard ISO 8601 date string (e.g. 2017-08-02T15:05:05.000Z) or the string `now`. If set to `now`, it will use the time the page loaded to render its template. If Number, must be a POSIX epoch value in milliseconds.\n\n#### `displayIn`\n\nOptional prop that can be either `\"utc\"` or `\"local\"` and defaults to `\"local\"`. This prop indicates what timezone to display the date in. If set to the value `\"utc\"`, the component will convert the given date to UTC.\n\n#### `locale`\n\nAn internationalization language string for each timer unit. The default value is `en` (for English). This prop supports all values that are supported by the user's browser.\n\n#### `localeOptions`\n\nThe `localeOptions` object supports all the options under [Intl.DateTimeFormat.options](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/DateTimeFormat#parameters) parameter that specifies the formatting style to use for `localeString` format.\n\nNote that if the `displayIn` prop is set to `utc`, the value of `localeOptions.timeZone` will automatically be converted to `UTC`.\n\n#### `render`\n\nOptional callback that should render a template. The callback will be provided an object with properties/values related to the date expressed in `datetime`.\n\nBy default, the Bento Date Display component will display the [`localeString` form of the Date](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/toLocaleString) for the given locale and localeOption. See the [Returned Time Parameters section](#returned-time-parameters) for more details on how each property will be displayed.\n\n```typescript\n(dateParams: DateParams) => JSXInternal.Element\ninterface DateParams {\n  day: number;\n  dayName: string;\n  dayNameShort: string;\n  dayPeriod: string;\n  dayTwoDigit: string;\n  hour: number;\n  hour12: number;\n  hour12TwoDigit: string;\n  hourTwoDigit: string;\n  iso: string;\n  localeString: string;\n  minute: number;\n  minuteTwoDigit: string;\n  month: number;\n  monthName: string;\n  monthNameShort: string;\n  monthTwoDigit: string;\n  second: number;\n  secondTwoDigit: string;\n  timeZoneName: string;\n  timeZoneNameShort: string;\n  year: number;\n  yearTwoDi: string;\n}\n```\n\n### Returned Time Parameters\n\nThis table lists the format you can specify in your Mustache template:\n\n| Format            | Meaning                                                       |\n| ----------------- | ------------------------------------------------------------- |\n| day               | 1, 2, ...12, 13, etc.                                         |\n| dayName           | string,                                                       |\n| dayNameShort      | string,                                                       |\n| dayPeriod         | string,                                                       |\n| dayTwoDigit       | 01, 02, 03, ..., 12, 13, etc.                                 |\n| hour              | 0, 1, 2, 3, ..., 12, 13, ..., 22, 23                          |\n| hour12            | 1, 2, 3, ..., 12, 1, 2, ..., 11, 12                           |\n| hour12TwoDigit    | 01, 02, ..., 12, 01, 02, ..., 11, 12                          |\n| hourTwoDigit      | 00, 01, 02, ..., 12, 13, ..., 22, 23                          |\n| iso               | A standard ISO8601 date string e.g. 2019-01-23T15:31:21.213Z, |\n| localeString      | A string with a language sensitive representation.            |\n| minute            | 0, 1, 2, ..., 58, 59                                          |\n| minuteTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| month             | 1, 2, 3, ..., 12                                              |\n| monthName         | Internationalized month name string.                          |\n| monthNameShort    | Internationalized abbreviated month name string.,             |\n| monthTwoDigit     | 01, 02, ..., 11, 12                                           |\n| second            | 0, 1, 2, ..., 58, 59                                          |\n| secondTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| timeZoneName      | Internationalized timezone, like `Pacific Daylight Time`      |\n| timeZoneNameShort | Internationalized timezone, abbreviated, like `PST`           |\n| year              | 0, 1, 2, ..., 1999, 2000, 2001, etc.                          |\n| yearTwoDigit      | 00, 01, 02, ..., 17, 18, 19, ..., 98, 99                      |\n","readmeFilename":"README.md","gitHead":"c04895bc1c2e1d0b7b874427b9bf1cec2b4b9f72","bugs":{"url":"https://github.com/ampproject/amphtml/issues"},"_id":"@bentoproject/date-display@1.2201122239.0","_nodeVersion":"16.13.2","_npmVersion":"8.1.2","dist":{"integrity":"sha512-OwzlA6OdzrGZ1V4mkGQNXILLH8KF5+D0NaZqUAe5JttdMLQtMv0R8BNbUT//wwiED9kBUYHbdxHcpHYlP0QO9w==","shasum":"7609f76747b10380fdd3d72849cf5e256256093b","tarball":"https://registry.npmjs.org/@bentoproject/date-display/-/date-display-1.2201122239.0.tgz","fileCount":27,"unpackedSize":896956,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJh4CJiCRA9TVsSAnZWagAAY7YQAI6TfkwSL97UVDaNds7A\n8TpTPLc31BbDuguhnK9JGgsKp+13WG5t2E0vqg0LRU+WEVgT/WZ8FyL8Ui2e\niLpGUITKihqU+b4vHFCViUh9ejtnyvl8QmQ7ESyEpp7YiLy+1ZAK+c1zswWk\nX71HoY4oXvnAcVPbRaMkn6ezbl2a5F22SxrWxQqmbmt44cBXFp+C/utEEK5K\nayRKSWGdo++jmvRBBkNePVAJb/GbSXsR1mppuPae9Drmlpbyr8oLKEuC/0P0\nm3cvDgrqdc7tdO1TsFvrzM1N7ppirnBBKGki3QSiFSEwoAx3RSfsQXVK0AqU\nPV6DKeb/byYrywb1IhHXzbTXQd8qRYJd/feDUkoKLaBEjLmE1YeuOjKEC0np\n0ZJ2ofTRgjQPqSu0lHo8te2BnCNZOUvRNtIjpCEdQ53glhMB6VXaJdnnW5ta\nPdSOhfDvywJG/PUdnwlDefInti3gDIXWlwci7LY4Jy9TKhKvE+vWZdUwxgrR\nEU0FzQbUj0VqhggfnWYDNXwMR6Asz4pDVOiXkke+5Nu6+8uJ1rJnb+mV6xQD\nAieYwfgZQcyIkEWWlCck+VIDd2L/65cn+ayB3yl2zDHKkANi8kDddBuTWWrr\nnclXRrFb7ELvzdKkv1uj2feoOV5OmWFTwZhRLB1g9QobiC95F4F/Wpr+Rvup\n+mYh\r\n=1dHK\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIF1Q9BSTMqdTG8/12bhf4oCmtU8yj107LpQFFu6DUxPsAiBqYIjDw5M7vuVe5YR/wJqWqHCEupJ1JjzLNRwIuVEnCQ=="}]},"_npmUser":{"name":"bentoprojectbot","email":"bentobot@amp.dev"},"directories":{},"maintainers":[{"name":"bentoprojectbot","email":"bentobot@amp.dev"},{"name":"kristoferbaxter","email":"kbax@me.com"},{"name":"esth","email":"esther@amp.dev"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/date-display_1.2201122239.0_1642078818621_0.9514252926979718"},"_hasShrinkwrap":false},"1.2201131702.0":{"name":"@bentoproject/date-display","version":"1.2201131702.0","description":"Displays time data that you can render in your page.","author":{"name":"Bento Authors"},"license":"Apache-2.0","main":"./dist/web-component.js","module":"./dist/web-component.module.js","exports":{".":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./web-component":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./preact":{"import":"./dist/component-preact.module.js","require":"./dist/component-preact.js"},"./react":{"import":"./dist/component-react.module.js","require":"./dist/component-react.js"}},"repository":{"type":"git","url":"git+https://github.com/ampproject/amphtml.git","directory":"extensions/amp-date-display/1.0"},"homepage":"https://github.com/ampproject/amphtml/tree/main/extensions/amp-date-display/1.0","peerDependencies":{"preact":"^10.2.1","react":"^17.0.0"},"readme":"# Bento Date Display\n\nDisplays time data that you can render in your page. By providing specific [attributes](#attributes) in the Bento Date Display tag, the Bento Date Display extension returns a list of time parameters, which you can pass to [an amp-mustache template](../../amp-mustache/amp-mustache.md) for rendering. Refer to the [list below for each returned time parameter](#returned-time-parameters).\n\n## Web Component\n\nWe don't support the web component version of `bento-date-display` since `<template>` support is still being designed. This effort can be tracked in this [issue](https://go.amp.dev/issue/36619).\n\n<!--\nAn older version of this file contains the removed section, though it's incorrect:\n\nhttps://github.com/ampproject/amphtml/blob/422d171e87571c4d125a2bf956e78e92444c10e8/extensions/amp-date-display/1.0/README.md\n-->\n\n---\n\n## Preact/React Component\n\n### Import via npm\n\n```sh\nnpm install @bentoproject/date-display\n```\n\n```javascript\nimport React from 'react';\nimport {BentoDateDisplay} from '@bentoproject/date-display/react';\nimport '@bentoproject/date-display/styles.css';\n\nfunction App() {\n  return (\n    <BentoDateDisplay\n      datetime={dateTime}\n      displayIn={displayIn}\n      locale={locale}\n      render={(date) => (\n        <div>{`ISO: ${date.iso}; locale: ${date.localeString}`}</div>\n      )}\n    />\n  );\n}\n```\n\n### Interactivity and API usage\n\nThe Bento Date Display component does not have an imperative API. However, the Bento Date Display Preact/React component does accept a `render` prop that renders the consumer's template. This `render` prop should be a function which the Bento Date Display Preact/React component can use to render its template. The `render` callback will be provided a variety of date-related parameters for consumers to interpolate in the rendered template. See the [`render` prop section](#render) for more information.\n\n### Layout and style\n\nThe Bento Date Display Preact/React component allows consumers to render their own templates. These templates may use inline styles, `<style>` tags, Preact/React components that import their own stylesheets.\n\n### Props\n\n#### `datetime`\n\nRequired prop. Denotes the date and time as a Date, String, or Nuumber. If String, must be a standard ISO 8601 date string (e.g. 2017-08-02T15:05:05.000Z) or the string `now`. If set to `now`, it will use the time the page loaded to render its template. If Number, must be a POSIX epoch value in milliseconds.\n\n#### `displayIn`\n\nOptional prop that can be either `\"utc\"` or `\"local\"` and defaults to `\"local\"`. This prop indicates what timezone to display the date in. If set to the value `\"utc\"`, the component will convert the given date to UTC.\n\n#### `locale`\n\nAn internationalization language string for each timer unit. The default value is `en` (for English). This prop supports all values that are supported by the user's browser.\n\n#### `localeOptions`\n\nThe `localeOptions` object supports all the options under [Intl.DateTimeFormat.options](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/DateTimeFormat#parameters) parameter that specifies the formatting style to use for `localeString` format.\n\nNote that if the `displayIn` prop is set to `utc`, the value of `localeOptions.timeZone` will automatically be converted to `UTC`.\n\n#### `render`\n\nOptional callback that should render a template. The callback will be provided an object with properties/values related to the date expressed in `datetime`.\n\nBy default, the Bento Date Display component will display the [`localeString` form of the Date](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/toLocaleString) for the given locale and localeOption. See the [Returned Time Parameters section](#returned-time-parameters) for more details on how each property will be displayed.\n\n```typescript\n(dateParams: DateParams) => JSXInternal.Element\ninterface DateParams {\n  day: number;\n  dayName: string;\n  dayNameShort: string;\n  dayPeriod: string;\n  dayTwoDigit: string;\n  hour: number;\n  hour12: number;\n  hour12TwoDigit: string;\n  hourTwoDigit: string;\n  iso: string;\n  localeString: string;\n  minute: number;\n  minuteTwoDigit: string;\n  month: number;\n  monthName: string;\n  monthNameShort: string;\n  monthTwoDigit: string;\n  second: number;\n  secondTwoDigit: string;\n  timeZoneName: string;\n  timeZoneNameShort: string;\n  year: number;\n  yearTwoDi: string;\n}\n```\n\n### Returned Time Parameters\n\nThis table lists the format you can specify in your Mustache template:\n\n| Format            | Meaning                                                       |\n| ----------------- | ------------------------------------------------------------- |\n| day               | 1, 2, ...12, 13, etc.                                         |\n| dayName           | string,                                                       |\n| dayNameShort      | string,                                                       |\n| dayPeriod         | string,                                                       |\n| dayTwoDigit       | 01, 02, 03, ..., 12, 13, etc.                                 |\n| hour              | 0, 1, 2, 3, ..., 12, 13, ..., 22, 23                          |\n| hour12            | 1, 2, 3, ..., 12, 1, 2, ..., 11, 12                           |\n| hour12TwoDigit    | 01, 02, ..., 12, 01, 02, ..., 11, 12                          |\n| hourTwoDigit      | 00, 01, 02, ..., 12, 13, ..., 22, 23                          |\n| iso               | A standard ISO8601 date string e.g. 2019-01-23T15:31:21.213Z, |\n| localeString      | A string with a language sensitive representation.            |\n| minute            | 0, 1, 2, ..., 58, 59                                          |\n| minuteTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| month             | 1, 2, 3, ..., 12                                              |\n| monthName         | Internationalized month name string.                          |\n| monthNameShort    | Internationalized abbreviated month name string.,             |\n| monthTwoDigit     | 01, 02, ..., 11, 12                                           |\n| second            | 0, 1, 2, ..., 58, 59                                          |\n| secondTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| timeZoneName      | Internationalized timezone, like `Pacific Daylight Time`      |\n| timeZoneNameShort | Internationalized timezone, abbreviated, like `PST`           |\n| year              | 0, 1, 2, ..., 1999, 2000, 2001, etc.                          |\n| yearTwoDigit      | 00, 01, 02, ..., 17, 18, 19, ..., 98, 99                      |\n","readmeFilename":"README.md","gitHead":"e9b16ad7a5cee398ceaabf6ba7990488624e098b","bugs":{"url":"https://github.com/ampproject/amphtml/issues"},"_id":"@bentoproject/date-display@1.2201131702.0","_nodeVersion":"16.13.2","_npmVersion":"8.1.2","dist":{"integrity":"sha512-ywhiR3ed5HRz3tcy6MR5NtsZkaCt4JBsiqq6pww1e9leDDyK/gfSuD4fzVRdx2qqDMwa9kY58mWyospzWmlLFA==","shasum":"75524c4913e89b9bec91ba57ab1d9cbbbb9fce4b","tarball":"https://registry.npmjs.org/@bentoproject/date-display/-/date-display-1.2201131702.0.tgz","fileCount":27,"unpackedSize":899810,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJh4XTjCRA9TVsSAnZWagAAThMP/3PMyyNcBRmIkaQNSKa8\n4iTmVtyUjtMLEsfimpl0UOIUFCXOoCCQO7uEMw24reXXfKnaazvKYmdKwiSj\nLscHlu1j/9pEhlBjzSCQD41bTga7mJImn33E8/Z30WzPaBETl5IHP8ZLL+ZJ\nTiCkrBGmLiexC02ZW+zzgOYEdNgBZq5gmyR8wKkfWd79EZPOjYJqo89XN15D\noPdTJwqlptABin+mEwRB/nal4ydKiZHASnUlqzGkgr3XgJRe1Fa/wTOk5PM8\nRnuOgyn2+bnvZAmVz0snxASe6DqBP2A6JU2aD6cx5f1gmc9YtJpetbBHA3l1\nz1buXMKVjHX784SIy9Fszx/gSpwhjddjyjbh+XEbknQ2qUF1pxlg5H75s9sj\nL0nHyIev9CNuo/tA+rGzfUMoKfXlnX6zJN6XMm5b/4LHrOERQu0QN+EJpcBV\nhbtZgMMkc0bgmYNgJqQ8Vkg77d70IzUUBxSALYw4KneN64GR3pHZ59QKIJYY\nwl1TIsvuzKVEAu7M/2FBXeFzQ/TqYYl5AzBxae2DGFqbK2OPS3FWpILMcWgR\nlZOx/HknibY59lMYWpNckvmAX/7zr26VhAtjP+FPWmIUbYR+0o+5MMGyi657\nHiPPnkG8pwYljtfr7rH0oMHmDomneDHAmFsDem974EcOgjwr/JMJ683VAaC0\neb+x\r\n=Bw2r\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIFh2vdy4OO0XZ0NSudEU2wWxJPS+VV3GBARtgNQyOANWAiBuQ/KlSqmRYf6oUg9U7o7YBvJXxWRqPaOsQ9sAYJABYg=="}]},"_npmUser":{"name":"bentoprojectbot","email":"bentobot@amp.dev"},"directories":{},"maintainers":[{"name":"bentoprojectbot","email":"bentobot@amp.dev"},{"name":"kristoferbaxter","email":"kbax@me.com"},{"name":"esth","email":"esther@amp.dev"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/date-display_1.2201131702.0_1642165475316_0.8992300005123368"},"_hasShrinkwrap":false},"1.2201141909.0":{"name":"@bentoproject/date-display","version":"1.2201141909.0","description":"Displays time data that you can render in your page.","author":{"name":"Bento Authors"},"license":"Apache-2.0","main":"./dist/web-component.js","module":"./dist/web-component.module.js","exports":{".":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./web-component":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./preact":{"import":"./dist/component-preact.module.js","require":"./dist/component-preact.js"},"./react":{"import":"./dist/component-react.module.js","require":"./dist/component-react.js"}},"repository":{"type":"git","url":"git+https://github.com/ampproject/amphtml.git","directory":"extensions/amp-date-display/1.0"},"homepage":"https://github.com/ampproject/amphtml/tree/main/extensions/amp-date-display/1.0","peerDependencies":{"preact":"^10.2.1","react":"^17.0.0"},"readme":"# Bento Date Display\n\nDisplays time data that you can render in your page. By providing specific [attributes](#attributes) in the Bento Date Display tag, the Bento Date Display extension returns a list of time parameters, which you can pass to [an amp-mustache template](../../amp-mustache/amp-mustache.md) for rendering. Refer to the [list below for each returned time parameter](#returned-time-parameters).\n\n## Web Component\n\nWe don't support the web component version of `bento-date-display` since `<template>` support is still being designed. This effort can be tracked in this [issue](https://go.amp.dev/issue/36619).\n\n<!--\nAn older version of this file contains the removed section, though it's incorrect:\n\nhttps://github.com/ampproject/amphtml/blob/422d171e87571c4d125a2bf956e78e92444c10e8/extensions/amp-date-display/1.0/README.md\n-->\n\n---\n\n## Preact/React Component\n\n### Import via npm\n\n```sh\nnpm install @bentoproject/date-display\n```\n\n```javascript\nimport React from 'react';\nimport {BentoDateDisplay} from '@bentoproject/date-display/react';\nimport '@bentoproject/date-display/styles.css';\n\nfunction App() {\n  return (\n    <BentoDateDisplay\n      datetime={dateTime}\n      displayIn={displayIn}\n      locale={locale}\n      render={(date) => (\n        <div>{`ISO: ${date.iso}; locale: ${date.localeString}`}</div>\n      )}\n    />\n  );\n}\n```\n\n### Interactivity and API usage\n\nThe Bento Date Display component does not have an imperative API. However, the Bento Date Display Preact/React component does accept a `render` prop that renders the consumer's template. This `render` prop should be a function which the Bento Date Display Preact/React component can use to render its template. The `render` callback will be provided a variety of date-related parameters for consumers to interpolate in the rendered template. See the [`render` prop section](#render) for more information.\n\n### Layout and style\n\nThe Bento Date Display Preact/React component allows consumers to render their own templates. These templates may use inline styles, `<style>` tags, Preact/React components that import their own stylesheets.\n\n### Props\n\n#### `datetime`\n\nRequired prop. Denotes the date and time as a Date, String, or Nuumber. If String, must be a standard ISO 8601 date string (e.g. 2017-08-02T15:05:05.000Z) or the string `now`. If set to `now`, it will use the time the page loaded to render its template. If Number, must be a POSIX epoch value in milliseconds.\n\n#### `displayIn`\n\nOptional prop that can be either `\"utc\"` or `\"local\"` and defaults to `\"local\"`. This prop indicates what timezone to display the date in. If set to the value `\"utc\"`, the component will convert the given date to UTC.\n\n#### `locale`\n\nAn internationalization language string for each timer unit. The default value is `en` (for English). This prop supports all values that are supported by the user's browser.\n\n#### `localeOptions`\n\nThe `localeOptions` object supports all the options under [Intl.DateTimeFormat.options](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/DateTimeFormat#parameters) parameter that specifies the formatting style to use for `localeString` format.\n\nNote that if the `displayIn` prop is set to `utc`, the value of `localeOptions.timeZone` will automatically be converted to `UTC`.\n\n#### `render`\n\nOptional callback that should render a template. The callback will be provided an object with properties/values related to the date expressed in `datetime`.\n\nBy default, the Bento Date Display component will display the [`localeString` form of the Date](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/toLocaleString) for the given locale and localeOption. See the [Returned Time Parameters section](#returned-time-parameters) for more details on how each property will be displayed.\n\n```typescript\n(dateParams: DateParams) => JSXInternal.Element\ninterface DateParams {\n  day: number;\n  dayName: string;\n  dayNameShort: string;\n  dayPeriod: string;\n  dayTwoDigit: string;\n  hour: number;\n  hour12: number;\n  hour12TwoDigit: string;\n  hourTwoDigit: string;\n  iso: string;\n  localeString: string;\n  minute: number;\n  minuteTwoDigit: string;\n  month: number;\n  monthName: string;\n  monthNameShort: string;\n  monthTwoDigit: string;\n  second: number;\n  secondTwoDigit: string;\n  timeZoneName: string;\n  timeZoneNameShort: string;\n  year: number;\n  yearTwoDi: string;\n}\n```\n\n### Returned Time Parameters\n\nThis table lists the format you can specify in your Mustache template:\n\n| Format            | Meaning                                                       |\n| ----------------- | ------------------------------------------------------------- |\n| day               | 1, 2, ...12, 13, etc.                                         |\n| dayName           | string,                                                       |\n| dayNameShort      | string,                                                       |\n| dayPeriod         | string,                                                       |\n| dayTwoDigit       | 01, 02, 03, ..., 12, 13, etc.                                 |\n| hour              | 0, 1, 2, 3, ..., 12, 13, ..., 22, 23                          |\n| hour12            | 1, 2, 3, ..., 12, 1, 2, ..., 11, 12                           |\n| hour12TwoDigit    | 01, 02, ..., 12, 01, 02, ..., 11, 12                          |\n| hourTwoDigit      | 00, 01, 02, ..., 12, 13, ..., 22, 23                          |\n| iso               | A standard ISO8601 date string e.g. 2019-01-23T15:31:21.213Z, |\n| localeString      | A string with a language sensitive representation.            |\n| minute            | 0, 1, 2, ..., 58, 59                                          |\n| minuteTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| month             | 1, 2, 3, ..., 12                                              |\n| monthName         | Internationalized month name string.                          |\n| monthNameShort    | Internationalized abbreviated month name string.,             |\n| monthTwoDigit     | 01, 02, ..., 11, 12                                           |\n| second            | 0, 1, 2, ..., 58, 59                                          |\n| secondTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| timeZoneName      | Internationalized timezone, like `Pacific Daylight Time`      |\n| timeZoneNameShort | Internationalized timezone, abbreviated, like `PST`           |\n| year              | 0, 1, 2, ..., 1999, 2000, 2001, etc.                          |\n| yearTwoDigit      | 00, 01, 02, ..., 17, 18, 19, ..., 98, 99                      |\n","readmeFilename":"README.md","gitHead":"96bebbc98d1f79b185c5ff6c58442ddc2092547d","bugs":{"url":"https://github.com/ampproject/amphtml/issues"},"_id":"@bentoproject/date-display@1.2201141909.0","_nodeVersion":"16.13.2","_npmVersion":"8.1.2","dist":{"integrity":"sha512-QVUFWPvo3dnpF+L1kgRkGqcZb7fZnNnZXXHftZ1bYZLLto74+V0JECuNaWRnQ9Rvs3Mu1S8eCvFaJjhmFdDQEA==","shasum":"305f307c124f026fffe9b389bed4d5941780ea10","tarball":"https://registry.npmjs.org/@bentoproject/date-display/-/date-display-1.2201141909.0.tgz","fileCount":27,"unpackedSize":899167,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJh4rxACRA9TVsSAnZWagAAsVMP/2vyacg4tUh1A3WOOIAs\nmnzSjbtlDrJPDjz3ZLGaqknS+Hx05Z6UVwtCvHBeMPCarMiAl3p0IIXlD9Ml\nncUUr1pMV+5C7qeeRP614jTaBEtOIqmk46xKxx7Tuw7qrr7V+RFwX8AEY9y3\n9jGJAEt4IbMZaqvwSvkQBTdd8k80V/Q35/LBnTcRRFV3m9mP8xjKHue/PxbG\n66t4RBUDEUM/ssCzheR07eIqpxJYNDqWz2pqHtBGfGZL6FMslEwrVQjixCW5\no3EPyDCCAeHQe1TweZkRbM4juOqaIq+c2sE4hfSep03TVumE5PzobbrY+2Te\nDsKhKOKwD19xh9LgyDK1O5vQL+M5e7OnusC3v5JvKokPd9RWp8yaCzN5vxtM\n2MfrknvFgheFP0e04yEC7R2cL+x6SzpvmO41byhgKWWT6mnbVfNhB5Ma8Z8i\nTquXZcc57oreSdWqWwoG+VY2hdXmFM3B7H89xdlX0ozKZrYVjelQxo17eveL\nEQgn0Mc9eEsOibabk+yYlv5olMpeX6r1iLSLi93blKfm6FmrsqakN36AUcwR\nfjOFmayPlRHz2KcyzA/teclPq9LKZNHbs2AUz8U+57HcQoyd1lTas8VZZgf8\nJ1PtXQtWtIkS7D8El+1HFTIVyPKsbQ3b5KU9wJDiFnBn5elUlEn4RgJOHPQ9\nssdt\r\n=6LdA\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDdVQnbPhHu3WMxnP6/tz5OUpRgspRpMWnNSOIzKomKLgIhALEtmitWIh2le1sTc8MDIy/Vf3VGJUIvjxGkEPmMCEuN"}]},"_npmUser":{"name":"bentoprojectbot","email":"bentobot@amp.dev"},"directories":{},"maintainers":[{"name":"bentoprojectbot","email":"bentobot@amp.dev"},{"name":"kristoferbaxter","email":"kbax@me.com"},{"name":"esth","email":"esther@amp.dev"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/date-display_1.2201141909.0_1642249280427_0.7551580330857723"},"_hasShrinkwrap":false},"1.2201141909.1":{"name":"@bentoproject/date-display","version":"1.2201141909.1","description":"Displays time data that you can render in your page.","author":{"name":"Bento Authors"},"license":"Apache-2.0","main":"./dist/web-component.js","module":"./dist/web-component.module.js","exports":{".":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./web-component":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./preact":{"import":"./dist/component-preact.module.js","require":"./dist/component-preact.js"},"./react":{"import":"./dist/component-react.module.js","require":"./dist/component-react.js"}},"repository":{"type":"git","url":"git+https://github.com/ampproject/amphtml.git","directory":"extensions/amp-date-display/1.0"},"homepage":"https://github.com/ampproject/amphtml/tree/main/extensions/amp-date-display/1.0","peerDependencies":{"preact":"^10.2.1","react":"^17.0.0"},"gitHead":"6474ad58b0a7e1997cf1472b09ba21af402b09fd","bugs":{"url":"https://github.com/ampproject/amphtml/issues"},"_id":"@bentoproject/date-display@1.2201141909.1","_nodeVersion":"16.13.2","_npmVersion":"8.1.2","dist":{"integrity":"sha512-riOaz25Uhm86yZjtjNTAk1JxYIBOY1YLq8KveSZqfTgb2HzZoPclBsKdr0STPvXDZjc0XoZcpCPvOVry8+Ebkg==","shasum":"d7842bcffd204e475d4858f10f2eeca02c77d491","tarball":"https://registry.npmjs.org/@bentoproject/date-display/-/date-display-1.2201141909.1.tgz","fileCount":27,"unpackedSize":888497,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJh8FRICRA9TVsSAnZWagAAamIP/jaAWXpAIktYhb3pByhz\n7ECT/fFYRTTxbVeD0dnn9u/U+lOaVsGzyr5KRKbAzqXno7YlhG+8G3R2qcQD\nNr7WYoQA0EHAIJmLtnZ6fkJiCkgrXExtK/VEScEU5YU5WfoBvcWGvAWn+KGr\nNnpGIT7mEcnkpdATfMO/i3GB9ch8q2tEugBnz7r1PIsmIf9+3dPZ8Ugq9UjR\n+JWdD4h278Tw1Z6a5PdGzf7RwWDUf9a/1ZQmtYXHLULljOrbfTOEablWm8ff\nv21KgEe1Nh+l0rfn17yYnfHgsaR+HSxjx7v0ejefUyoYax/AvZszAPSqt3LA\nMOv3iLaLQ8GnW7VrsDbNUpOUzCgL4XdpEvIq8M4PgMWloxc8Q7dJNMGiKViG\n2fzVKn3DwLGOSvNiQJQ8WzGdx9STYminxtNmNQp9a7Z/8ISFkxvaUajOu5Az\nSX0tROwidpqMZ8R5vt1muVXsRHVubK4mFZexM7B1VHN4gwvNhqYzFOTtbuIw\n9S1sSiBYw33FHSWROzXqlejb6ImWacnoHrrbDubZjlPpjiDC0D1HMXsDPzG8\n4RYszQUbJNAZuVB+5BRD+kUZb/RtXOI23ZMhheRXUqBf0MpKyLW914z3J2eT\nlvVZ4knI+0X75o1bG2PoLSdoZ77kmXPZBlofAt9XTPbjJrK2ADmHHry4uOmN\nZR8q\r\n=P+IG\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIEZaeWZPZF0cj+lxANi2AL6UBQ4lUqaxdrE4GXyQhOkDAiEA6WYpxBQtyUiP2aw8D/vmjufRMV9pTBYNQwEpTHsATiY="}]},"_npmUser":{"name":"bentoprojectbot","email":"bentobot@amp.dev"},"directories":{},"maintainers":[{"name":"bentoprojectbot","email":"bentobot@amp.dev"},{"name":"kristoferbaxter","email":"kbax@me.com"},{"name":"esth","email":"esther@amp.dev"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/date-display_1.2201141909.1_1643140167826_0.6421597060613422"},"_hasShrinkwrap":false},"1.2201141909.3":{"name":"@bentoproject/date-display","version":"1.2201141909.3","description":"Displays time data that you can render in your page.","author":{"name":"Bento Authors"},"license":"Apache-2.0","main":"./dist/web-component.js","module":"./dist/web-component.module.js","exports":{".":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./web-component":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./preact":{"import":"./dist/component-preact.module.js","require":"./dist/component-preact.js"},"./react":{"import":"./dist/component-react.module.js","require":"./dist/component-react.js"}},"repository":{"type":"git","url":"git+https://github.com/ampproject/amphtml.git","directory":"extensions/amp-date-display/1.0"},"homepage":"https://github.com/ampproject/amphtml/tree/main/extensions/amp-date-display/1.0","peerDependencies":{"preact":"^10.2.1","react":"^17.0.0"},"gitHead":"1edf4ae1e7a533868a19fad5b3b4da9917432bdc","bugs":{"url":"https://github.com/ampproject/amphtml/issues"},"_id":"@bentoproject/date-display@1.2201141909.3","_nodeVersion":"16.13.2","_npmVersion":"8.1.2","dist":{"integrity":"sha512-WOLlqY87FgGJLflTDE7LeQLO4FI4EDhpzH1PEXb2NGBUusNXHoJew7dypXim7L99v1Yxd4wqbf/W/zmdU14XIw==","shasum":"37f7532e07293b5caadd2b3c94f6485bb2ad9b10","tarball":"https://registry.npmjs.org/@bentoproject/date-display/-/date-display-1.2201141909.3.tgz","fileCount":27,"unpackedSize":890894,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJh8bYlCRA9TVsSAnZWagAA+KUP+QCH1JJi3gYS87Aajx7B\nrWOr56wKPPsazJO/596VkZE8ouxvOepSHl11qxLiqEzG/QuHTdYv73016Ter\nnXYWG/5RulNamrNek/nzHXoeWUHibsCm+xVp81naQx5owHPRf9VdG+ylypHM\nNxdctBspGw+M0VgNyzWHA1Ypz+P0xhfqgepbR15RH9/vYS6k8UoU0uY9DnG8\nn3KkXg0ge5xOR4T8HMYjjEuzqnO5b/m2n8BkaGc7X7mhlBkuZcvCpyOHjBKZ\n3mYmAmD7/sLCS5J3nB77BwA8Ux4ZZSdz8dHbcxTyZhtlUmgg7BUykpOJDUmD\nDFEbR+AXkte5As9ZErg8uTnKVkWkfTPt8oDD94Wcg/jwdzxjnvFJGudB1Ca6\n8O1Z5SgwIjZpDjZgIoKCORdB3VO2dGxfEdeyOoS3lRT82I/SUoCZbnHq1TgC\nmDcYEFMihufLcjW767mYB0JHYxFfdcKC28Gomp/0JdUAptSoFclH6wN/bGN4\nqox7bJCVrbkDTDq65xgKdzU6aNO8C5R8JDJ7nNEiTpvw8F7F2/EDgHssubpd\nh4Ks1xChI/9lU5CdYW/32lxPdJxEh1t8K3WumUtRwWr/SbUskJhdIZL8QUVe\n825lWoYyqLZe3t5Mw29mu62cu6qWjgDUs3/xG4v8333+w8LP6uWvqG2+8ku1\nk3HH\r\n=U4Zc\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIG24Af4TQkuqnqmTlXWYl9VojxN/srGcLxHkI3rAihEeAiEA5ijiG8AMTys3AA2DyBEl8Nw3201oR7O6jx1kk/C08oU="}]},"_npmUser":{"name":"bentoprojectbot","email":"bentobot@amp.dev"},"directories":{},"maintainers":[{"name":"bentoprojectbot","email":"bentobot@amp.dev"},{"name":"kristoferbaxter","email":"kbax@me.com"},{"name":"esth","email":"esther@amp.dev"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/date-display_1.2201141909.3_1643230756916_0.24217566657273593"},"_hasShrinkwrap":false},"1.2201141909.4":{"name":"@bentoproject/date-display","version":"1.2201141909.4","description":"Displays time data that you can render in your page.","author":{"name":"Bento Authors"},"license":"Apache-2.0","main":"./dist/web-component.js","module":"./dist/web-component.module.js","exports":{".":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./web-component":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./preact":{"import":"./dist/component-preact.module.js","require":"./dist/component-preact.js"},"./react":{"import":"./dist/component-react.module.js","require":"./dist/component-react.js"}},"repository":{"type":"git","url":"git+https://github.com/ampproject/amphtml.git","directory":"extensions/amp-date-display/1.0"},"homepage":"https://github.com/ampproject/amphtml/tree/main/extensions/amp-date-display/1.0","peerDependencies":{"preact":"^10.2.1","react":"^17.0.0"},"gitHead":"6e60d79b180fd0983c9644d325b45bd569c6da2d","bugs":{"url":"https://github.com/ampproject/amphtml/issues"},"_id":"@bentoproject/date-display@1.2201141909.4","_nodeVersion":"16.13.2","_npmVersion":"8.1.2","dist":{"integrity":"sha512-XpoP0qkEpSHBf8GEXmWoQOG3T3zrac0Mtc9IGEyeSBx+qvaTL1+H4WihgnRl0pgD9xa9bGAZW2j2NOHRf1yVTA==","shasum":"7ac833babade369315f18a6258dab4da5fd6b8a2","tarball":"https://registry.npmjs.org/@bentoproject/date-display/-/date-display-1.2201141909.4.tgz","fileCount":27,"unpackedSize":891602,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJh+agpCRA9TVsSAnZWagAAFowP/3LVxjYND2KUwsMo2jk9\nB9gEbV9WRvQDZU6qmA9aLdf0rBji62nrwg2TWLOAalsyDx6tFTrlXRO+1RMY\nJktYBEBBn0m8WoUNyR1xo0Ed6sxLKtbIgP1D6YcHBGrd6tf+gbX+FKucwkqd\nf4xHQFWOAgSSrLMVpUpEjSLGDxO3BEv6bzE+Ejab+dwitzTiB8J1YqT6/CPO\n6N9X/ILoOff9Yjo0hetIW7Q90busOei4QCB+wOoGZBBG8lMZeAqhUeOhUUmc\nysLr1BCSDYO9epRyHmfigldbw+V3jXQluTvWeXCtOW2PMb71vszVqnDxp20H\n4jy6bPvyKCfRDqNeyWHrSRa2w+R80b7jc4mJ8ri6KJ9cEjgK3MjfD3O5PuT/\n4HphuB8GV6qqTnVwXE/FDbg725W/ttg1XmBeJMRWJmRC+JvM43QU//wuRJpY\nQHgDmYnddlzaCLfAcOXZ4nsEF49IH9WV2zdvlQr1pSzi7+dvhEoT8QqBRQol\naMhaRUYlM0f+aGQsy47o9u7iurQDM2SxnfYv++plecu0KeqiiSf/cdw4DcDA\nqOe4jthmeJVA85NCzJ9QgQZqT9g6QoVBUhbbz3n8uD8WWn0bl+06Ys2UkaA7\n+l6df0RgftMTAE5T27gf4h3t3X4/gu+OX7h524lEsNebQiLrrrbvBi5MTVh/\nHFC+\r\n=A7ZG\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCeWFGvHvruRDoCiJYrKNiQkqAAFTgtNidVFb2CgUfobQIgMYu2vVRULQpW240r+3J8rjKkzG1oEWL9HADiNziFrbo="}]},"_npmUser":{"name":"bentoprojectbot","email":"bentobot@amp.dev"},"directories":{},"maintainers":[{"name":"bentoprojectbot","email":"bentobot@amp.dev"},{"name":"kristoferbaxter","email":"kbax@me.com"},{"name":"esth","email":"esther@amp.dev"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/date-display_1.2201141909.4_1643751465305_0.7558611337507646"},"_hasShrinkwrap":false},"1.2201212122.3":{"name":"@bentoproject/date-display","version":"1.2201212122.3","description":"Displays time data that you can render in your page.","author":{"name":"Bento Authors"},"license":"Apache-2.0","main":"./dist/web-component.js","module":"./dist/web-component.module.js","exports":{".":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./web-component":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./preact":{"import":"./dist/component-preact.module.js","require":"./dist/component-preact.js"},"./react":{"import":"./dist/component-react.module.js","require":"./dist/component-react.js"}},"repository":{"type":"git","url":"git+https://github.com/ampproject/amphtml.git","directory":"extensions/amp-date-display/1.0"},"homepage":"https://github.com/ampproject/amphtml/tree/main/extensions/amp-date-display/1.0","peerDependencies":{"preact":"^10.2.1","react":"^17.0.0"},"gitHead":"ca1c7d4b4b4a72f4913d7c304b5368187458574a","bugs":{"url":"https://github.com/ampproject/amphtml/issues"},"_id":"@bentoproject/date-display@1.2201212122.3","_nodeVersion":"16.13.2","_npmVersion":"8.1.2","dist":{"integrity":"sha512-sVtv2cgdVGyDkK0ekV7Gfdy003L/H5KP45n5pr1QlXgxSncAw5nz5iK6uVFn72Xx/PuRVkQO5u0JnlH6sMN66w==","shasum":"cdf08d9bc3976eb482b1e650a7758a42205bcac1","tarball":"https://registry.npmjs.org/@bentoproject/date-display/-/date-display-1.2201212122.3.tgz","fileCount":27,"unpackedSize":891602,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJh+sZTCRA9TVsSAnZWagAAp7kP/jUQY7npV7SvqF20HzuZ\nmmPdI+gLzjZ3j9OkLGDrk3NPFLUy7cba3zIcPrK19EoFhf2ODGuv5GChN8Nz\nb+w092UreiFC/bQnUd98wt3Zjn3qulNGWegoyTwdKH5I7OFAgoNv67suFL9D\nXnOhKR9LDgtoE95mnlyj2aHzjR0CKqcXuWaQZ11bp+ZQLyZhQ1r6/l7TEr6E\nkXZ7wE3EPDmMrjC71zZk1c3etTEI5PoNSq4EAqXP89/M+3hTLpXirnbCw9/e\n8TsheTIz7k5kE2q6ejkUgFbL1sUSy63y6u1OitV6dxqJne7PyZDvKl4g3Oe1\np2d0rEWQjzIYpVc8scvuD6xA1/cjlDj5yO3n60TLUQ5cMj6yXGAkFzoFYKc9\n4U6/geLA4uVlxQ0ry1oa7PchxdUGxJ/wauR8t+/KpmutQKTIhrKx1oCfb9xI\nfmg5A76uY2eyeSbnZ4Hjz+dQ83ZbpIppiHshdjToeGbulLxefM2wjriIOUAF\nB1s1E328ilJuHMx20b9qlFdG2xcCTPvxEGq6qjX6YpxsNlkfW6l6EUCnV/N5\nuZmV4mnNmSlO27mRQPfubZHKnERP6wbBsetVMAA09YxxElEuta5VW+fo+429\nJIA3zLzLIvHaAiPJCUMI40Io3mUDWhIzRTorZuSZawXNOsHRzUDz/z9eSXzr\nEkZ1\r\n=sGI8\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIF6LhAOOJl8PWY/7kQEOT0z0IzCMyWfak0hwFu1qxdcuAiBnvpxh0ZCVIjkqypvz2od4YfpbtG0BL804H+jFzHMBcw=="}]},"_npmUser":{"name":"bentoprojectbot","email":"bentobot@amp.dev"},"directories":{},"maintainers":[{"name":"bentoprojectbot","email":"bentobot@amp.dev"},{"name":"kristoferbaxter","email":"kbax@me.com"},{"name":"esth","email":"esther@amp.dev"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/date-display_1.2201212122.3_1643824723654_0.2267319153502878"},"_hasShrinkwrap":false},"1.2202012258.0":{"name":"@bentoproject/date-display","version":"1.2202012258.0","description":"Displays time data that you can render in your page.","author":{"name":"Bento Authors"},"license":"Apache-2.0","main":"./dist/web-component.js","module":"./dist/web-component.module.js","exports":{".":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./web-component":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./preact":{"import":"./dist/component-preact.module.js","require":"./dist/component-preact.js"},"./react":{"import":"./dist/component-react.module.js","require":"./dist/component-react.js"}},"repository":{"type":"git","url":"git+https://github.com/ampproject/amphtml.git","directory":"extensions/amp-date-display/1.0"},"homepage":"https://github.com/ampproject/amphtml/tree/main/extensions/amp-date-display/1.0","peerDependencies":{"preact":"^10.2.1","react":"^17.0.0"},"readme":"# Bento Date Display\n\nDisplays time data that you can render in your page. By providing specific [attributes](#attributes) in the Bento Date Display tag, the Bento Date Display extension returns a list of time parameters, which you can pass to [an amp-mustache template](../../amp-mustache/amp-mustache.md) for rendering. Refer to the [list below for each returned time parameter](#returned-time-parameters).\n\n## Web Component\n\nWe don't support the web component version of `bento-date-display` since `<template>` support is still being designed. This effort can be tracked in this [issue](https://go.amp.dev/issue/36619).\n\n<!--\nAn older version of this file contains the removed section, though it's incorrect:\n\nhttps://github.com/ampproject/amphtml/blob/422d171e87571c4d125a2bf956e78e92444c10e8/extensions/amp-date-display/1.0/README.md\n-->\n\n---\n\n## Preact/React Component\n\n### Import via npm\n\n```sh\nnpm install @bentoproject/date-display\n```\n\n```javascript\nimport React from 'react';\nimport {BentoDateDisplay} from '@bentoproject/date-display/react';\nimport '@bentoproject/date-display/styles.css';\n\nfunction App() {\n  return (\n    <BentoDateDisplay\n      datetime={dateTime}\n      displayIn={displayIn}\n      locale={locale}\n      render={(date) => (\n        <div>{`ISO: ${date.iso}; locale: ${date.localeString}`}</div>\n      )}\n    />\n  );\n}\n```\n\n### Interactivity and API usage\n\nThe Bento Date Display component does not have an imperative API. However, the Bento Date Display Preact/React component does accept a `render` prop that renders the consumer's template. This `render` prop should be a function which the Bento Date Display Preact/React component can use to render its template. The `render` callback will be provided a variety of date-related parameters for consumers to interpolate in the rendered template. See the [`render` prop section](#render) for more information.\n\n### Layout and style\n\nThe Bento Date Display Preact/React component allows consumers to render their own templates. These templates may use inline styles, `<style>` tags, Preact/React components that import their own stylesheets.\n\n### Props\n\n#### `datetime`\n\nRequired prop. Denotes the date and time as a Date, String, or Nuumber. If String, must be a standard ISO 8601 date string (e.g. 2017-08-02T15:05:05.000Z) or the string `now`. If set to `now`, it will use the time the page loaded to render its template. If Number, must be a POSIX epoch value in milliseconds.\n\n#### `displayIn`\n\nOptional prop that can be either `\"utc\"` or `\"local\"` and defaults to `\"local\"`. This prop indicates what timezone to display the date in. If set to the value `\"utc\"`, the component will convert the given date to UTC.\n\n#### `locale`\n\nAn internationalization language string for each timer unit. The default value is `en` (for English). This prop supports all values that are supported by the user's browser.\n\n#### `localeOptions`\n\nThe `localeOptions` object supports all the options under [Intl.DateTimeFormat.options](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/DateTimeFormat#parameters) parameter that specifies the formatting style to use for `localeString` format.\n\nNote that if the `displayIn` prop is set to `utc`, the value of `localeOptions.timeZone` will automatically be converted to `UTC`.\n\n#### `render`\n\nOptional callback that should render a template. The callback will be provided an object with properties/values related to the date expressed in `datetime`.\n\nBy default, the Bento Date Display component will display the [`localeString` form of the Date](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/toLocaleString) for the given locale and localeOption. See the [Returned Time Parameters section](#returned-time-parameters) for more details on how each property will be displayed.\n\n```typescript\n(dateParams: DateParams) => JSXInternal.Element\ninterface DateParams {\n  day: number;\n  dayName: string;\n  dayNameShort: string;\n  dayPeriod: string;\n  dayTwoDigit: string;\n  hour: number;\n  hour12: number;\n  hour12TwoDigit: string;\n  hourTwoDigit: string;\n  iso: string;\n  localeString: string;\n  minute: number;\n  minuteTwoDigit: string;\n  month: number;\n  monthName: string;\n  monthNameShort: string;\n  monthTwoDigit: string;\n  second: number;\n  secondTwoDigit: string;\n  timeZoneName: string;\n  timeZoneNameShort: string;\n  year: number;\n  yearTwoDi: string;\n}\n```\n\n### Returned Time Parameters\n\nThis table lists the format you can specify in your Mustache template:\n\n| Format            | Meaning                                                       |\n| ----------------- | ------------------------------------------------------------- |\n| day               | 1, 2, ...12, 13, etc.                                         |\n| dayName           | string,                                                       |\n| dayNameShort      | string,                                                       |\n| dayPeriod         | string,                                                       |\n| dayTwoDigit       | 01, 02, 03, ..., 12, 13, etc.                                 |\n| hour              | 0, 1, 2, 3, ..., 12, 13, ..., 22, 23                          |\n| hour12            | 1, 2, 3, ..., 12, 1, 2, ..., 11, 12                           |\n| hour12TwoDigit    | 01, 02, ..., 12, 01, 02, ..., 11, 12                          |\n| hourTwoDigit      | 00, 01, 02, ..., 12, 13, ..., 22, 23                          |\n| iso               | A standard ISO8601 date string e.g. 2019-01-23T15:31:21.213Z, |\n| localeString      | A string with a language sensitive representation.            |\n| minute            | 0, 1, 2, ..., 58, 59                                          |\n| minuteTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| month             | 1, 2, 3, ..., 12                                              |\n| monthName         | Internationalized month name string.                          |\n| monthNameShort    | Internationalized abbreviated month name string.,             |\n| monthTwoDigit     | 01, 02, ..., 11, 12                                           |\n| second            | 0, 1, 2, ..., 58, 59                                          |\n| secondTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| timeZoneName      | Internationalized timezone, like `Pacific Daylight Time`      |\n| timeZoneNameShort | Internationalized timezone, abbreviated, like `PST`           |\n| year              | 0, 1, 2, ..., 1999, 2000, 2001, etc.                          |\n| yearTwoDigit      | 00, 01, 02, ..., 17, 18, 19, ..., 98, 99                      |\n","readmeFilename":"README.md","gitHead":"fb0c4a54446b5abfcc53d1d446f24370c05507c2","bugs":{"url":"https://github.com/ampproject/amphtml/issues"},"_id":"@bentoproject/date-display@1.2202012258.0","_nodeVersion":"16.13.2","_npmVersion":"8.1.2","dist":{"integrity":"sha512-6HH4cGRa765Ol+AJ/Zb5IToD4GaaayyL9ciOfRWICvwXixpfO9otc1AM5rZ5tk01rpRa4/er5gXK5d6SxT+dBQ==","shasum":"84833215a4bb22eafc709576c1129e4cf510a9c5","tarball":"https://registry.npmjs.org/@bentoproject/date-display/-/date-display-1.2202012258.0.tgz","fileCount":27,"unpackedSize":891602,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJh+tfRCRA9TVsSAnZWagAAOyMP/jrBum+nRqZk1wz9psUq\nxHre9zoF/a5P4Toje9UNI5sag6+OGaGLfgk1oo/u7oE/OwNDAn40ObpsvYCU\nwRD1dKZ/DjXvT3W16jLST+QG/1uKsNBHHKDem/FVAHRXihdRfWsdiD/oOhMj\n6cnGglul9JT583gNdrTiqD18FTLTOUhOnQjmeXlIl0kZf23vAKNlNeKYxdGk\n+TpBD8AzcICkQdsh5THZcZyf7xXa7Cfxm9ZJQsaEXcxayRAlhjjrae/h1li3\n59eqLOj7M12VvezlzBZiYenndgCuz1rjp6NG5k8cibzPfwSSs8XnB7Bi0+lB\nSZw3wPHbKk9fMf8YvBOuNdjf61bfq9MAENVrjR8IXglT3CmZVUrErIHPgsYA\ne9DyXGmmGqastr2VO4YkKGUjfsT15JhfZnxczXLfrqU35XTQZ1IuLvGVq2+/\n5uiggIvZEV0rCvcV4Z9IDFEzm9f2oTes2cdolIg5R0foISrwA7Udo1/x1SoD\nNMGJYO9MqB+r+25TZYjEvTV00BKodQozoPBlZfKOa2227HFxV3kPMpQyRh8u\nChcEq9wVUBcTpc9JsBuwe151Bu1UYPNeklnjwhXmoMPBBw8YenJyAqzh/bva\nUn+cQ2Yfoq1Wvp+0Ir4wX6YhpYZdzSNLfU602X81y9fEgyezuGvmC1cknbE6\neD2E\r\n=r+3H\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCCGQA/u+X2y4y6i0MaFtNqY3fPIbIYRXxyMKHH+3+HQQIhAOkbl5DQVLSwT8K4gr5J61DfYVyfzYkP27HSgaFax0QA"}]},"_npmUser":{"name":"bentoprojectbot","email":"bentobot@amp.dev"},"directories":{},"maintainers":[{"name":"bentoprojectbot","email":"bentobot@amp.dev"},{"name":"kristoferbaxter","email":"kbax@me.com"},{"name":"esth","email":"esther@amp.dev"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/date-display_1.2202012258.0_1643829200935_0.3686839521267684"},"_hasShrinkwrap":false},"1.2202022130.0":{"name":"@bentoproject/date-display","version":"1.2202022130.0","description":"Displays time data that you can render in your page.","author":{"name":"Bento Authors"},"license":"Apache-2.0","main":"./dist/web-component.js","module":"./dist/web-component.module.js","exports":{".":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./web-component":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./preact":{"import":"./dist/component-preact.module.js","require":"./dist/component-preact.js"},"./react":{"import":"./dist/component-react.module.js","require":"./dist/component-react.js"}},"repository":{"type":"git","url":"git+https://github.com/ampproject/amphtml.git","directory":"extensions/amp-date-display/1.0"},"homepage":"https://github.com/ampproject/amphtml/tree/main/extensions/amp-date-display/1.0","peerDependencies":{"preact":"^10.2.1","react":"^17.0.0"},"readme":"# Bento Date Display\n\nDisplays time data that you can render in your page. By providing specific [attributes](#attributes) in the Bento Date Display tag, the Bento Date Display extension returns a list of time parameters, which you can pass to [an amp-mustache template](../../amp-mustache/amp-mustache.md) for rendering. Refer to the [list below for each returned time parameter](#returned-time-parameters).\n\n## Web Component\n\nWe don't support the web component version of `bento-date-display` since `<template>` support is still being designed. This effort can be tracked in this [issue](https://go.amp.dev/issue/36619).\n\n<!--\nAn older version of this file contains the removed section, though it's incorrect:\n\nhttps://github.com/ampproject/amphtml/blob/422d171e87571c4d125a2bf956e78e92444c10e8/extensions/amp-date-display/1.0/README.md\n-->\n\n---\n\n## Preact/React Component\n\n### Import via npm\n\n```sh\nnpm install @bentoproject/date-display\n```\n\n```javascript\nimport React from 'react';\nimport {BentoDateDisplay} from '@bentoproject/date-display/react';\nimport '@bentoproject/date-display/styles.css';\n\nfunction App() {\n  return (\n    <BentoDateDisplay\n      datetime={dateTime}\n      displayIn={displayIn}\n      locale={locale}\n      render={(date) => (\n        <div>{`ISO: ${date.iso}; locale: ${date.localeString}`}</div>\n      )}\n    />\n  );\n}\n```\n\n### Interactivity and API usage\n\nThe Bento Date Display component does not have an imperative API. However, the Bento Date Display Preact/React component does accept a `render` prop that renders the consumer's template. This `render` prop should be a function which the Bento Date Display Preact/React component can use to render its template. The `render` callback will be provided a variety of date-related parameters for consumers to interpolate in the rendered template. See the [`render` prop section](#render) for more information.\n\n### Layout and style\n\nThe Bento Date Display Preact/React component allows consumers to render their own templates. These templates may use inline styles, `<style>` tags, Preact/React components that import their own stylesheets.\n\n### Props\n\n#### `datetime`\n\nRequired prop. Denotes the date and time as a Date, String, or Nuumber. If String, must be a standard ISO 8601 date string (e.g. 2017-08-02T15:05:05.000Z) or the string `now`. If set to `now`, it will use the time the page loaded to render its template. If Number, must be a POSIX epoch value in milliseconds.\n\n#### `displayIn`\n\nOptional prop that can be either `\"utc\"` or `\"local\"` and defaults to `\"local\"`. This prop indicates what timezone to display the date in. If set to the value `\"utc\"`, the component will convert the given date to UTC.\n\n#### `locale`\n\nAn internationalization language string for each timer unit. The default value is `en` (for English). This prop supports all values that are supported by the user's browser.\n\n#### `localeOptions`\n\nThe `localeOptions` object supports all the options under [Intl.DateTimeFormat.options](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/DateTimeFormat#parameters) parameter that specifies the formatting style to use for `localeString` format.\n\nNote that if the `displayIn` prop is set to `utc`, the value of `localeOptions.timeZone` will automatically be converted to `UTC`.\n\n#### `render`\n\nOptional callback that should render a template. The callback will be provided an object with properties/values related to the date expressed in `datetime`.\n\nBy default, the Bento Date Display component will display the [`localeString` form of the Date](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/toLocaleString) for the given locale and localeOption. See the [Returned Time Parameters section](#returned-time-parameters) for more details on how each property will be displayed.\n\n```typescript\n(dateParams: DateParams) => JSXInternal.Element\ninterface DateParams {\n  day: number;\n  dayName: string;\n  dayNameShort: string;\n  dayPeriod: string;\n  dayTwoDigit: string;\n  hour: number;\n  hour12: number;\n  hour12TwoDigit: string;\n  hourTwoDigit: string;\n  iso: string;\n  localeString: string;\n  minute: number;\n  minuteTwoDigit: string;\n  month: number;\n  monthName: string;\n  monthNameShort: string;\n  monthTwoDigit: string;\n  second: number;\n  secondTwoDigit: string;\n  timeZoneName: string;\n  timeZoneNameShort: string;\n  year: number;\n  yearTwoDi: string;\n}\n```\n\n### Returned Time Parameters\n\nThis table lists the format you can specify in your Mustache template:\n\n| Format            | Meaning                                                       |\n| ----------------- | ------------------------------------------------------------- |\n| day               | 1, 2, ...12, 13, etc.                                         |\n| dayName           | string,                                                       |\n| dayNameShort      | string,                                                       |\n| dayPeriod         | string,                                                       |\n| dayTwoDigit       | 01, 02, 03, ..., 12, 13, etc.                                 |\n| hour              | 0, 1, 2, 3, ..., 12, 13, ..., 22, 23                          |\n| hour12            | 1, 2, 3, ..., 12, 1, 2, ..., 11, 12                           |\n| hour12TwoDigit    | 01, 02, ..., 12, 01, 02, ..., 11, 12                          |\n| hourTwoDigit      | 00, 01, 02, ..., 12, 13, ..., 22, 23                          |\n| iso               | A standard ISO8601 date string e.g. 2019-01-23T15:31:21.213Z, |\n| localeString      | A string with a language sensitive representation.            |\n| minute            | 0, 1, 2, ..., 58, 59                                          |\n| minuteTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| month             | 1, 2, 3, ..., 12                                              |\n| monthName         | Internationalized month name string.                          |\n| monthNameShort    | Internationalized abbreviated month name string.,             |\n| monthTwoDigit     | 01, 02, ..., 11, 12                                           |\n| second            | 0, 1, 2, ..., 58, 59                                          |\n| secondTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| timeZoneName      | Internationalized timezone, like `Pacific Daylight Time`      |\n| timeZoneNameShort | Internationalized timezone, abbreviated, like `PST`           |\n| year              | 0, 1, 2, ..., 1999, 2000, 2001, etc.                          |\n| yearTwoDigit      | 00, 01, 02, ..., 17, 18, 19, ..., 98, 99                      |\n","readmeFilename":"README.md","gitHead":"76b8fbdfc923fb90c4ecf4dededfbae0a5978ff5","bugs":{"url":"https://github.com/ampproject/amphtml/issues"},"_id":"@bentoproject/date-display@1.2202022130.0","_nodeVersion":"16.13.2","_npmVersion":"8.1.2","dist":{"integrity":"sha512-HDsW1TwPpcV8Wnr3K/WUArJxQlbGZOXhKUXlicfkv9xtICyk7+dN/h/tMVwDepk1uSa37xkRO8SQRdwxhoVwKA==","shasum":"fea4d4cedeed995a8b4e6ef9f9e34239191f2845","tarball":"https://registry.npmjs.org/@bentoproject/date-display/-/date-display-1.2202022130.0.tgz","fileCount":27,"unpackedSize":891602,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJh/AkGCRA9TVsSAnZWagAAGlAP/RVG1HC1fNygu1u87QiC\nC+dPSb/Cph+g331MMUOuJE510PRcjb8QwOam3LrBADMZCu78TtZaWX+iAvQu\nl00ixOoxUGeyUV2uZrP6KqpgscCDdbQThkGOonLEHqwzj2aIbcW9dtRr3BwZ\noEiaJp8EkHlBjrxRNtnP5UtSsYcR8OvwknxxqMc71UpNCu8PT3lsK8iwMwHU\nPOScvyLjuRBhBSoySd5VnITnagqf2rNCch1c8ZgutitK+iHkGSmum2WXaOT+\nQnNhG/RuvDEIq7z6tS8rUiRh0P4s6dMsTDSpX/14jLALp1ZgxEqFe+vjFwTO\nceLDrq0fLyfOCLeS3MQE26tG7OfpLssUhVXJeV94MQW5U1b1nmXFYBy+ihVp\nLiS/Yc0ruAjAxjXBjl4Wbhlrfi6HjDUF8OdSQ/SIccRojJHJkJCqGRFpunZG\ntDBhwc1WCD47ObqnFhVggBM2c6xo0EbJyLrix/0psA+Wf7w0p6qJHbY6dxlM\n5tQtjsyWd3hdmzWfX2tISB8Y211rROxUbRi70I0GyWEoJF1gRqHQhyDixaNQ\nPfU4kyBC9w9zxyKeF2DYwUqn8nm/DWrX2GiztlLxEZDl1GL3M4BBO4lFLjcq\nUSdmtZwGr9uXc2POBAOv8AyLGuNwbmmRXU1Qmy/ci3AWaK/N0z3sVtcJcux3\npzh7\r\n=aoxg\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIGssxmBay0WUk/RTKsGjnT7kwNlJ4JvhDW5PDaBHbFsDAiAiWGXG4l80b6mJ1PM0Cb/HMgy5UP4DypnsJxE7xoOdLw=="}]},"_npmUser":{"name":"bentoprojectbot","email":"bentobot@amp.dev"},"directories":{},"maintainers":[{"name":"bentoprojectbot","email":"bentobot@amp.dev"},{"name":"kristoferbaxter","email":"kbax@me.com"},{"name":"esth","email":"esther@amp.dev"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/date-display_1.2202022130.0_1643907334147_0.22038672986304086"},"_hasShrinkwrap":false},"1.2202031816.0":{"name":"@bentoproject/date-display","version":"1.2202031816.0","description":"Displays time data that you can render in your page.","author":{"name":"Bento Authors"},"license":"Apache-2.0","main":"./dist/web-component.js","module":"./dist/web-component.module.js","exports":{".":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./web-component":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./preact":{"import":"./dist/component-preact.module.js","require":"./dist/component-preact.js"},"./react":{"import":"./dist/component-react.module.js","require":"./dist/component-react.js"}},"repository":{"type":"git","url":"git+https://github.com/ampproject/amphtml.git","directory":"extensions/amp-date-display/1.0"},"homepage":"https://github.com/ampproject/amphtml/tree/main/extensions/amp-date-display/1.0","peerDependencies":{"preact":"^10.2.1","react":"^17.0.0"},"readme":"# Bento Date Display\n\nDisplays time data that you can render in your page. By providing specific [attributes](#attributes) in the Bento Date Display tag, the Bento Date Display extension returns a list of time parameters, which you can pass to [an amp-mustache template](../../amp-mustache/amp-mustache.md) for rendering. Refer to the [list below for each returned time parameter](#returned-time-parameters).\n\n## Web Component\n\nWe don't support the web component version of `bento-date-display` since `<template>` support is still being designed. This effort can be tracked in this [issue](https://go.amp.dev/issue/36619).\n\n<!--\nAn older version of this file contains the removed section, though it's incorrect:\n\nhttps://github.com/ampproject/amphtml/blob/422d171e87571c4d125a2bf956e78e92444c10e8/extensions/amp-date-display/1.0/README.md\n-->\n\n---\n\n## Preact/React Component\n\n### Import via npm\n\n```sh\nnpm install @bentoproject/date-display\n```\n\n```javascript\nimport React from 'react';\nimport {BentoDateDisplay} from '@bentoproject/date-display/react';\nimport '@bentoproject/date-display/styles.css';\n\nfunction App() {\n  return (\n    <BentoDateDisplay\n      datetime={dateTime}\n      displayIn={displayIn}\n      locale={locale}\n      render={(date) => (\n        <div>{`ISO: ${date.iso}; locale: ${date.localeString}`}</div>\n      )}\n    />\n  );\n}\n```\n\n### Interactivity and API usage\n\nThe Bento Date Display component does not have an imperative API. However, the Bento Date Display Preact/React component does accept a `render` prop that renders the consumer's template. This `render` prop should be a function which the Bento Date Display Preact/React component can use to render its template. The `render` callback will be provided a variety of date-related parameters for consumers to interpolate in the rendered template. See the [`render` prop section](#render) for more information.\n\n### Layout and style\n\nThe Bento Date Display Preact/React component allows consumers to render their own templates. These templates may use inline styles, `<style>` tags, Preact/React components that import their own stylesheets.\n\n### Props\n\n#### `datetime`\n\nRequired prop. Denotes the date and time as a Date, String, or Nuumber. If String, must be a standard ISO 8601 date string (e.g. 2017-08-02T15:05:05.000Z) or the string `now`. If set to `now`, it will use the time the page loaded to render its template. If Number, must be a POSIX epoch value in milliseconds.\n\n#### `displayIn`\n\nOptional prop that can be either `\"utc\"` or `\"local\"` and defaults to `\"local\"`. This prop indicates what timezone to display the date in. If set to the value `\"utc\"`, the component will convert the given date to UTC.\n\n#### `locale`\n\nAn internationalization language string for each timer unit. The default value is `en` (for English). This prop supports all values that are supported by the user's browser.\n\n#### `localeOptions`\n\nThe `localeOptions` object supports all the options under [Intl.DateTimeFormat.options](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/DateTimeFormat#parameters) parameter that specifies the formatting style to use for `localeString` format.\n\nNote that if the `displayIn` prop is set to `utc`, the value of `localeOptions.timeZone` will automatically be converted to `UTC`.\n\n#### `render`\n\nOptional callback that should render a template. The callback will be provided an object with properties/values related to the date expressed in `datetime`.\n\nBy default, the Bento Date Display component will display the [`localeString` form of the Date](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/toLocaleString) for the given locale and localeOption. See the [Returned Time Parameters section](#returned-time-parameters) for more details on how each property will be displayed.\n\n```typescript\n(dateParams: DateParams) => JSXInternal.Element\ninterface DateParams {\n  day: number;\n  dayName: string;\n  dayNameShort: string;\n  dayPeriod: string;\n  dayTwoDigit: string;\n  hour: number;\n  hour12: number;\n  hour12TwoDigit: string;\n  hourTwoDigit: string;\n  iso: string;\n  localeString: string;\n  minute: number;\n  minuteTwoDigit: string;\n  month: number;\n  monthName: string;\n  monthNameShort: string;\n  monthTwoDigit: string;\n  second: number;\n  secondTwoDigit: string;\n  timeZoneName: string;\n  timeZoneNameShort: string;\n  year: number;\n  yearTwoDi: string;\n}\n```\n\n### Returned Time Parameters\n\nThis table lists the format you can specify in your Mustache template:\n\n| Format            | Meaning                                                       |\n| ----------------- | ------------------------------------------------------------- |\n| day               | 1, 2, ...12, 13, etc.                                         |\n| dayName           | string,                                                       |\n| dayNameShort      | string,                                                       |\n| dayPeriod         | string,                                                       |\n| dayTwoDigit       | 01, 02, 03, ..., 12, 13, etc.                                 |\n| hour              | 0, 1, 2, 3, ..., 12, 13, ..., 22, 23                          |\n| hour12            | 1, 2, 3, ..., 12, 1, 2, ..., 11, 12                           |\n| hour12TwoDigit    | 01, 02, ..., 12, 01, 02, ..., 11, 12                          |\n| hourTwoDigit      | 00, 01, 02, ..., 12, 13, ..., 22, 23                          |\n| iso               | A standard ISO8601 date string e.g. 2019-01-23T15:31:21.213Z, |\n| localeString      | A string with a language sensitive representation.            |\n| minute            | 0, 1, 2, ..., 58, 59                                          |\n| minuteTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| month             | 1, 2, 3, ..., 12                                              |\n| monthName         | Internationalized month name string.                          |\n| monthNameShort    | Internationalized abbreviated month name string.,             |\n| monthTwoDigit     | 01, 02, ..., 11, 12                                           |\n| second            | 0, 1, 2, ..., 58, 59                                          |\n| secondTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| timeZoneName      | Internationalized timezone, like `Pacific Daylight Time`      |\n| timeZoneNameShort | Internationalized timezone, abbreviated, like `PST`           |\n| year              | 0, 1, 2, ..., 1999, 2000, 2001, etc.                          |\n| yearTwoDigit      | 00, 01, 02, ..., 17, 18, 19, ..., 98, 99                      |\n","readmeFilename":"README.md","gitHead":"b29dbd478c93a5298a18f8df14e6c1f5184879e3","bugs":{"url":"https://github.com/ampproject/amphtml/issues"},"_id":"@bentoproject/date-display@1.2202031816.0","_nodeVersion":"16.13.2","_npmVersion":"8.1.2","dist":{"integrity":"sha512-2koUfZChIE+4w54J9kGzuodqZ64camTRBvX8+hlPf7BUs7K2JvqQ+FEPOrcJfI3cdS8k93DwkSpY8QpkPhpGvg==","shasum":"ebb23baab317c109bfb1de2deb70ff00560340a0","tarball":"https://registry.npmjs.org/@bentoproject/date-display/-/date-display-1.2202031816.0.tgz","fileCount":27,"unpackedSize":891602,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJh/UpWCRA9TVsSAnZWagAASgIQAJtitFDVaGY/kV1q5b5T\nPHkWYmf9CCjGln9M3NkeE4D+vWyg73kUb4umJ6P1kXXqd6ekT3VUClTPZG0l\ne7tuhVVBGt8uxElOpJ/DOjcaxhk1AHeQM6DM4dfVdCUhcrydyplshvKdZdFZ\n8IY3+9lya0GlP/s3rNupHlolHty+egMQ1XEHeqHr+mpJC6RgjZxrlayqm1Xd\n98OCOqrqAHjtD8u2DjbXZQVncPEWTVuRq++eXrJ6FxE/L2g4zPF6ILOP26jr\naLGqjMSrhnSWRgp0vdkw/tQcopg3l0adHkvkQ8sdWBKxuEiMIRKOxIk6AHE3\nzvtZO90qV+qON1waHPj794dQfQtMYPoYYi5jVdRZwbBzVDngBpp0xu8FbWXo\nQcaRuOQIXMcucqI1dHvuyVsQH+YZO4gfy/C0Xa/UumgHz5+WYMYh5R1An4ik\nyfKyPXLHo9zzYl6hPgFIutmjNALgh+qt9bp2nuDqoTNZRaGThdWbmevdi+Mv\nG141Oszh54GFlJHiB77MvHbQxq6d6c2Cs5vLydeEAXKO40gDmKMfqEKPKro8\nPgOwXSe2skUEQ6qFAekKkDRY9hyLXwu9RpExteOBH36m4O8JaJ35bduf38mj\npBbPMp3sTo0se5+Myn8Y3pVililgoXRD15vLPTxrqRP+0WrfFypq7sPQlXb/\nrSJw\r\n=igNP\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIAbeyZjdycjHcqAZc/k8bwkALC9lkqJH45Sjf4+uumTLAiAeUlHsj7LeWHhweu7hO386iVxZY1da/xMLd/1s+7dO6g=="}]},"_npmUser":{"name":"bentoprojectbot","email":"bentobot@amp.dev"},"directories":{},"maintainers":[{"name":"bentoprojectbot","email":"bentobot@amp.dev"},{"name":"kristoferbaxter","email":"kbax@me.com"},{"name":"esth","email":"esther@amp.dev"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/date-display_1.2202031816.0_1643989590098_0.8942606583929995"},"_hasShrinkwrap":false},"1.2202042210.0":{"name":"@bentoproject/date-display","version":"1.2202042210.0","description":"Displays time data that you can render in your page.","author":{"name":"Bento Authors"},"license":"Apache-2.0","main":"./dist/web-component.js","module":"./dist/web-component.module.js","exports":{".":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./web-component":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./preact":{"import":"./dist/component-preact.module.js","require":"./dist/component-preact.js"},"./react":{"import":"./dist/component-react.module.js","require":"./dist/component-react.js"}},"repository":{"type":"git","url":"git+https://github.com/ampproject/amphtml.git","directory":"extensions/amp-date-display/1.0"},"homepage":"https://github.com/ampproject/amphtml/tree/main/extensions/amp-date-display/1.0","peerDependencies":{"preact":"^10.2.1","react":"^17.0.0"},"readme":"# Bento Date Display\n\nDisplays time data that you can render in your page. By providing specific [attributes](#attributes) in the Bento Date Display tag, the Bento Date Display extension returns a list of time parameters, which you can pass to [an amp-mustache template](../../amp-mustache/amp-mustache.md) for rendering. Refer to the [list below for each returned time parameter](#returned-time-parameters).\n\n## Web Component\n\nWe don't support the web component version of `bento-date-display` since `<template>` support is still being designed. This effort can be tracked in this [issue](https://go.amp.dev/issue/36619).\n\n<!--\nAn older version of this file contains the removed section, though it's incorrect:\n\nhttps://github.com/ampproject/amphtml/blob/422d171e87571c4d125a2bf956e78e92444c10e8/extensions/amp-date-display/1.0/README.md\n-->\n\n---\n\n## Preact/React Component\n\n### Import via npm\n\n```sh\nnpm install @bentoproject/date-display\n```\n\n```javascript\nimport React from 'react';\nimport {BentoDateDisplay} from '@bentoproject/date-display/react';\nimport '@bentoproject/date-display/styles.css';\n\nfunction App() {\n  return (\n    <BentoDateDisplay\n      datetime={dateTime}\n      displayIn={displayIn}\n      locale={locale}\n      render={(date) => (\n        <div>{`ISO: ${date.iso}; locale: ${date.localeString}`}</div>\n      )}\n    />\n  );\n}\n```\n\n### Interactivity and API usage\n\nThe Bento Date Display component does not have an imperative API. However, the Bento Date Display Preact/React component does accept a `render` prop that renders the consumer's template. This `render` prop should be a function which the Bento Date Display Preact/React component can use to render its template. The `render` callback will be provided a variety of date-related parameters for consumers to interpolate in the rendered template. See the [`render` prop section](#render) for more information.\n\n### Layout and style\n\nThe Bento Date Display Preact/React component allows consumers to render their own templates. These templates may use inline styles, `<style>` tags, Preact/React components that import their own stylesheets.\n\n### Props\n\n#### `datetime`\n\nRequired prop. Denotes the date and time as a Date, String, or Nuumber. If String, must be a standard ISO 8601 date string (e.g. 2017-08-02T15:05:05.000Z) or the string `now`. If set to `now`, it will use the time the page loaded to render its template. If Number, must be a POSIX epoch value in milliseconds.\n\n#### `displayIn`\n\nOptional prop that can be either `\"utc\"` or `\"local\"` and defaults to `\"local\"`. This prop indicates what timezone to display the date in. If set to the value `\"utc\"`, the component will convert the given date to UTC.\n\n#### `locale`\n\nAn internationalization language string for each timer unit. The default value is `en` (for English). This prop supports all values that are supported by the user's browser.\n\n#### `localeOptions`\n\nThe `localeOptions` object supports all the options under [Intl.DateTimeFormat.options](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/DateTimeFormat#parameters) parameter that specifies the formatting style to use for `localeString` format.\n\nNote that if the `displayIn` prop is set to `utc`, the value of `localeOptions.timeZone` will automatically be converted to `UTC`.\n\n#### `render`\n\nOptional callback that should render a template. The callback will be provided an object with properties/values related to the date expressed in `datetime`.\n\nBy default, the Bento Date Display component will display the [`localeString` form of the Date](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/toLocaleString) for the given locale and localeOption. See the [Returned Time Parameters section](#returned-time-parameters) for more details on how each property will be displayed.\n\n```typescript\n(dateParams: DateParams) => JSXInternal.Element\ninterface DateParams {\n  day: number;\n  dayName: string;\n  dayNameShort: string;\n  dayPeriod: string;\n  dayTwoDigit: string;\n  hour: number;\n  hour12: number;\n  hour12TwoDigit: string;\n  hourTwoDigit: string;\n  iso: string;\n  localeString: string;\n  minute: number;\n  minuteTwoDigit: string;\n  month: number;\n  monthName: string;\n  monthNameShort: string;\n  monthTwoDigit: string;\n  second: number;\n  secondTwoDigit: string;\n  timeZoneName: string;\n  timeZoneNameShort: string;\n  year: number;\n  yearTwoDi: string;\n}\n```\n\n### Returned Time Parameters\n\nThis table lists the format you can specify in your Mustache template:\n\n| Format            | Meaning                                                       |\n| ----------------- | ------------------------------------------------------------- |\n| day               | 1, 2, ...12, 13, etc.                                         |\n| dayName           | string,                                                       |\n| dayNameShort      | string,                                                       |\n| dayPeriod         | string,                                                       |\n| dayTwoDigit       | 01, 02, 03, ..., 12, 13, etc.                                 |\n| hour              | 0, 1, 2, 3, ..., 12, 13, ..., 22, 23                          |\n| hour12            | 1, 2, 3, ..., 12, 1, 2, ..., 11, 12                           |\n| hour12TwoDigit    | 01, 02, ..., 12, 01, 02, ..., 11, 12                          |\n| hourTwoDigit      | 00, 01, 02, ..., 12, 13, ..., 22, 23                          |\n| iso               | A standard ISO8601 date string e.g. 2019-01-23T15:31:21.213Z, |\n| localeString      | A string with a language sensitive representation.            |\n| minute            | 0, 1, 2, ..., 58, 59                                          |\n| minuteTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| month             | 1, 2, 3, ..., 12                                              |\n| monthName         | Internationalized month name string.                          |\n| monthNameShort    | Internationalized abbreviated month name string.,             |\n| monthTwoDigit     | 01, 02, ..., 11, 12                                           |\n| second            | 0, 1, 2, ..., 58, 59                                          |\n| secondTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| timeZoneName      | Internationalized timezone, like `Pacific Daylight Time`      |\n| timeZoneNameShort | Internationalized timezone, abbreviated, like `PST`           |\n| year              | 0, 1, 2, ..., 1999, 2000, 2001, etc.                          |\n| yearTwoDigit      | 00, 01, 02, ..., 17, 18, 19, ..., 98, 99                      |\n","readmeFilename":"README.md","gitHead":"04d031e10759f2ab3f4a10cacd2b776e3de93812","bugs":{"url":"https://github.com/ampproject/amphtml/issues"},"_id":"@bentoproject/date-display@1.2202042210.0","_nodeVersion":"16.13.2","_npmVersion":"8.1.2","dist":{"integrity":"sha512-Fvlw5b9QYUBnvncvLpl045DAEYQVsJkgSe77H5wdUbnL6sj+s45FaIiNzKgqaVO3enFMrcrJNWX5e2FXY+KAZA==","shasum":"a1d5987929ebbddfa641d7cb6fc26df8f7e09e23","tarball":"https://registry.npmjs.org/@bentoproject/date-display/-/date-display-1.2202042210.0.tgz","fileCount":27,"unpackedSize":893739,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJh/kCvCRA9TVsSAnZWagAAMyYQAIedglxZ+0//jjp4gsTq\nDz4lvopK+eTECZqSnNMucoYMSBn4LeDrvLmVZtsbwvGoEFckNt3EFdijJMRh\nrYOpQXMoxSFX4AU9BO1OJY6J8XRPU0LmQ7DglV+SFHH3LUoRAeYYgZAstQRK\nQrj/ihk2XctCZKrMO5tJdoFO6LC9bF4Ru+NQyIhFzi0wUJ31EJ7r0ms6W8Vd\nrB+JkQFZxkbmPxnOiYvkVjibv+V9dwRaYPPl0bzKNUvZQHZIrP+25IdGEc0U\nGDD8RwtNzu9sKdU2Jf947pHAmBnKmN4W1rfzdPLFNvaA4Ri+KQAP1VUXppgR\ngKAGV8C2g/lVe3aHWptsr8LrODXsWs9n1J4OLZctBZ2zlxDvqwEGUyhyPAEZ\nNUS2XPow2wjX+MTyfjNdFsCqFPjpJNaBFIbZzKhA1mouicIdysD9RTNXK2La\n5ck+CqUgCORnPiC+xvvmQB5IQ50aouLQZ/vgv7IYEFkFK3XvT5ckt8LXGmkt\nn8m1OwqyVBQmouNiqFkmHnJCTkxjPbiVt+j9NYUj+gcw60aciWXQs6HxxqKO\n6n4GUehVDSAmFQx8y1/CWHFtZNmu71eiABgi/G34FfbG7UKDhQPLfrm+R4vq\nbfCXiXUaXdVBffxKtyYJKyMTQwWO/wOIKbjTiti7Hu15hUKkGoy0azr5vr0w\niMdd\r\n=cA4l\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCLc1INnHiifMDP7eEdAVGiMzfYmTYa9ZabqhFsfXGkHwIgI68b9tGIBDGXYnVvwbdclZ78mvqM0ksGIffL8ID7bs8="}]},"_npmUser":{"name":"bentoprojectbot","email":"bentobot@amp.dev"},"directories":{},"maintainers":[{"name":"bentoprojectbot","email":"bentobot@amp.dev"},{"name":"kristoferbaxter","email":"kbax@me.com"},{"name":"esth","email":"esther@amp.dev"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/date-display_1.2202042210.0_1644052655731_0.6733240796864524"},"_hasShrinkwrap":false},"1.2202072236.0":{"name":"@bentoproject/date-display","version":"1.2202072236.0","description":"Displays time data that you can render in your page.","author":{"name":"Bento Authors"},"license":"Apache-2.0","main":"./dist/web-component.js","module":"./dist/web-component.module.js","exports":{".":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./web-component":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./preact":{"import":"./dist/component-preact.module.js","require":"./dist/component-preact.js"},"./react":{"import":"./dist/component-react.module.js","require":"./dist/component-react.js"}},"repository":{"type":"git","url":"git+https://github.com/ampproject/amphtml.git","directory":"extensions/amp-date-display/1.0"},"homepage":"https://github.com/ampproject/amphtml/tree/main/extensions/amp-date-display/1.0","peerDependencies":{"preact":"^10.2.1","react":"^17.0.0"},"readme":"# Bento Date Display\n\nDisplays time data that you can render in your page. By providing specific [attributes](#attributes) in the Bento Date Display tag, the Bento Date Display extension returns a list of time parameters, which you can pass to [an amp-mustache template](../../amp-mustache/amp-mustache.md) for rendering. Refer to the [list below for each returned time parameter](#returned-time-parameters).\n\n## Web Component\n\nWe don't support the web component version of `bento-date-display` since `<template>` support is still being designed. This effort can be tracked in this [issue](https://go.amp.dev/issue/36619).\n\n<!--\nAn older version of this file contains the removed section, though it's incorrect:\n\nhttps://github.com/ampproject/amphtml/blob/422d171e87571c4d125a2bf956e78e92444c10e8/extensions/amp-date-display/1.0/README.md\n-->\n\n---\n\n## Preact/React Component\n\n### Import via npm\n\n```sh\nnpm install @bentoproject/date-display\n```\n\n```javascript\nimport React from 'react';\nimport {BentoDateDisplay} from '@bentoproject/date-display/react';\nimport '@bentoproject/date-display/styles.css';\n\nfunction App() {\n  return (\n    <BentoDateDisplay\n      datetime={dateTime}\n      displayIn={displayIn}\n      locale={locale}\n      render={(date) => (\n        <div>{`ISO: ${date.iso}; locale: ${date.localeString}`}</div>\n      )}\n    />\n  );\n}\n```\n\n### Interactivity and API usage\n\nThe Bento Date Display component does not have an imperative API. However, the Bento Date Display Preact/React component does accept a `render` prop that renders the consumer's template. This `render` prop should be a function which the Bento Date Display Preact/React component can use to render its template. The `render` callback will be provided a variety of date-related parameters for consumers to interpolate in the rendered template. See the [`render` prop section](#render) for more information.\n\n### Layout and style\n\nThe Bento Date Display Preact/React component allows consumers to render their own templates. These templates may use inline styles, `<style>` tags, Preact/React components that import their own stylesheets.\n\n### Props\n\n#### `datetime`\n\nRequired prop. Denotes the date and time as a Date, String, or Nuumber. If String, must be a standard ISO 8601 date string (e.g. 2017-08-02T15:05:05.000Z) or the string `now`. If set to `now`, it will use the time the page loaded to render its template. If Number, must be a POSIX epoch value in milliseconds.\n\n#### `displayIn`\n\nOptional prop that can be either `\"utc\"` or `\"local\"` and defaults to `\"local\"`. This prop indicates what timezone to display the date in. If set to the value `\"utc\"`, the component will convert the given date to UTC.\n\n#### `locale`\n\nAn internationalization language string for each timer unit. The default value is `en` (for English). This prop supports all values that are supported by the user's browser.\n\n#### `localeOptions`\n\nThe `localeOptions` object supports all the options under [Intl.DateTimeFormat.options](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/DateTimeFormat#parameters) parameter that specifies the formatting style to use for `localeString` format.\n\nNote that if the `displayIn` prop is set to `utc`, the value of `localeOptions.timeZone` will automatically be converted to `UTC`.\n\n#### `render`\n\nOptional callback that should render a template. The callback will be provided an object with properties/values related to the date expressed in `datetime`.\n\nBy default, the Bento Date Display component will display the [`localeString` form of the Date](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/toLocaleString) for the given locale and localeOption. See the [Returned Time Parameters section](#returned-time-parameters) for more details on how each property will be displayed.\n\n```typescript\n(dateParams: DateParams) => JSXInternal.Element\ninterface DateParams {\n  day: number;\n  dayName: string;\n  dayNameShort: string;\n  dayPeriod: string;\n  dayTwoDigit: string;\n  hour: number;\n  hour12: number;\n  hour12TwoDigit: string;\n  hourTwoDigit: string;\n  iso: string;\n  localeString: string;\n  minute: number;\n  minuteTwoDigit: string;\n  month: number;\n  monthName: string;\n  monthNameShort: string;\n  monthTwoDigit: string;\n  second: number;\n  secondTwoDigit: string;\n  timeZoneName: string;\n  timeZoneNameShort: string;\n  year: number;\n  yearTwoDi: string;\n}\n```\n\n### Returned Time Parameters\n\nThis table lists the format you can specify in your Mustache template:\n\n| Format            | Meaning                                                       |\n| ----------------- | ------------------------------------------------------------- |\n| day               | 1, 2, ...12, 13, etc.                                         |\n| dayName           | string,                                                       |\n| dayNameShort      | string,                                                       |\n| dayPeriod         | string,                                                       |\n| dayTwoDigit       | 01, 02, 03, ..., 12, 13, etc.                                 |\n| hour              | 0, 1, 2, 3, ..., 12, 13, ..., 22, 23                          |\n| hour12            | 1, 2, 3, ..., 12, 1, 2, ..., 11, 12                           |\n| hour12TwoDigit    | 01, 02, ..., 12, 01, 02, ..., 11, 12                          |\n| hourTwoDigit      | 00, 01, 02, ..., 12, 13, ..., 22, 23                          |\n| iso               | A standard ISO8601 date string e.g. 2019-01-23T15:31:21.213Z, |\n| localeString      | A string with a language sensitive representation.            |\n| minute            | 0, 1, 2, ..., 58, 59                                          |\n| minuteTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| month             | 1, 2, 3, ..., 12                                              |\n| monthName         | Internationalized month name string.                          |\n| monthNameShort    | Internationalized abbreviated month name string.,             |\n| monthTwoDigit     | 01, 02, ..., 11, 12                                           |\n| second            | 0, 1, 2, ..., 58, 59                                          |\n| secondTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| timeZoneName      | Internationalized timezone, like `Pacific Daylight Time`      |\n| timeZoneNameShort | Internationalized timezone, abbreviated, like `PST`           |\n| year              | 0, 1, 2, ..., 1999, 2000, 2001, etc.                          |\n| yearTwoDigit      | 00, 01, 02, ..., 17, 18, 19, ..., 98, 99                      |\n","readmeFilename":"README.md","gitHead":"1d8443e81e44defe1ab915032668da75884187d8","bugs":{"url":"https://github.com/ampproject/amphtml/issues"},"_id":"@bentoproject/date-display@1.2202072236.0","_nodeVersion":"16.13.2","_npmVersion":"8.1.2","dist":{"integrity":"sha512-PC7/zCQnEPWE9cKC7RipgMW76MOpBIiu+xo+HxGPfERnSUf1xuygSecnJ2QtBJhAZK6K7vhYISfWw0Kp8bHZNQ==","shasum":"30bcf458a43cb74bc97163e2fb8bca990be8eacd","tarball":"https://registry.npmjs.org/@bentoproject/date-display/-/date-display-1.2202072236.0.tgz","fileCount":27,"unpackedSize":893739,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJiAjW7CRA9TVsSAnZWagAAWM4P/A8Rw+3ZfbcIjEk8ziLe\nQ/I9kF70XA+r9+P9sXbodCugLe0DafvtuUX95NMLucugrB2kQgr4S/xe44Lt\n8zB4PL3vl9ijKZgtq8It5Dm/luBzF73ZJqAen/xPO+iMjH1p+vFPHnzY+xlC\nstbC9lXe14CmNId9L2TCEtcava4Nz7HZ7DVEAdn+kFtIJkkrEUBaNLB2XjRr\ngXm4cIYTixMUklYzfuRhLWB7Zi0OuYAnPun0JV0OzRDadMr+hTwsjSCTYZlF\nIxLX6wxSdZZyM2MvdAPMH3JwsFO4ec+oxfGp3A1aSKpTYYN0hCHzGFDPp8OW\nVFtaISk9vU1+ZFNLX9xEmNgnLEOWd/U6DKE3XTo+paVwazuQfctUGzA2xgEY\nQnNxAC2ei8+PD4ck0DzhXAktLMnH+sH+vE1ljpjdaqdBSlYDud9heBJQYGls\noXLvdyWKuvZL4y6rCxS4PIIwlyGtnCLXmwJctI/c6fIgnnJojRmpr+RNCY6v\nA3LUmpF76g1uA8QuAvJUvh2tkhCkT+4lYMDoJFZxSA1rnvqxGK8PNk0+Y+H4\n3o83YeMmPhqJ07PhXDu+ykUujV3W5CgtCijAyDPbbyQgXWlO7W9ovK6AmnsM\nZB29Nw0sG8q/rAofRZmywKOz5hBWI9F64ZeKCVwYWaG2Ehjb88LwUVcsU1nw\nU6wD\r\n=AR/9\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDp7/E915Z0IulGvFffWU8+xolq52QVQ2vVvp3MNre0QgIhANsV9sFSOysT2LMlYzGs3e+bCSM4I+HfmHfcemEjLJrN"}]},"_npmUser":{"name":"bentoprojectbot","email":"bentobot@amp.dev"},"directories":{},"maintainers":[{"name":"bentoprojectbot","email":"bentobot@amp.dev"},{"name":"kristoferbaxter","email":"kbax@me.com"},{"name":"esth","email":"esther@amp.dev"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/date-display_1.2202072236.0_1644311995749_0.869254170977094"},"_hasShrinkwrap":false},"1.2201262038.1":{"name":"@bentoproject/date-display","version":"1.2201262038.1","description":"Displays time data that you can render in your page.","author":{"name":"Bento Authors"},"license":"Apache-2.0","main":"./dist/web-component.js","module":"./dist/web-component.module.js","exports":{".":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./web-component":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./preact":{"import":"./dist/component-preact.module.js","require":"./dist/component-preact.js"},"./react":{"import":"./dist/component-react.module.js","require":"./dist/component-react.js"},"./web-component.css":"./dist/web-component.css"},"repository":{"type":"git","url":"git+https://github.com/ampproject/amphtml.git","directory":"extensions/amp-date-display/1.0"},"homepage":"https://github.com/ampproject/amphtml/tree/main/extensions/amp-date-display/1.0","peerDependencies":{"preact":"^10.2.1","react":"^17.0.0"},"gitHead":"cb2af7d382510037805d85242e3f21a88654a20b","bugs":{"url":"https://github.com/ampproject/amphtml/issues"},"_id":"@bentoproject/date-display@1.2201262038.1","_nodeVersion":"16.13.2","_npmVersion":"8.1.2","dist":{"integrity":"sha512-tWtuQHfQwpOgLqrMnraWZAJmSCK4M+gb8Qh41xGQN+iuuePKfTuQDfftACUZ/Z+n4tVZABsBrVtweOIwZpr/GQ==","shasum":"5ec005dea3324be35787b012a01645b983b8565e","tarball":"https://registry.npmjs.org/@bentoproject/date-display/-/date-display-1.2201262038.1.tgz","fileCount":28,"unpackedSize":900513,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJiAtzWCRA9TVsSAnZWagAAMZQP/1hz+S3UlUBOuxPo9L99\n5NgIKyE9hENNXcE9pDJpS9LX4HOzsygn1w5MbmjFdZxXBsHAy46tXwycMEIR\nY7ZtzLuj5Pa6nGJNYh5NNG71ivvAWe93QggKU3ws7C79KI8q/s7qcdp2dj/2\nVKdhKH3DsfDbvnTPTYAonMXLZGHYKOCIZQmOm9a/1pdHluJ3Ff8duLExLo3z\n14ZZbBL75spNnx6XMATWZ0uM9/pwqIKU10nlH5or9YhKtKER2EfDK44BEqyJ\nYS/I+Nudzz2faI6vbkd2IiMOaiNXQw+TUnomUTvxBeVbXZP+mev7cZrDB+ld\nja8X8m8CwVPgEPjkWK3tjLLv1RnfSe05WuCeudfxdgx2JMA924dvUqYWdHjX\naCgCRkBYoHk5hmxEl1IktvK+C1C6JMXS1MOXaFgjs9rp+i0EC1mR7wUXJeND\njf8lxpqSozVNbdGAJ5sMhQx+3lOhaKOA2rsPGAANGphHx2/jUOnY/ItesjsI\nfjlrbaZ/BU75Aev7+7MaANB09Ub2W288Jw1QShl9VZ2qZRC1KZ1qzWIlrT2z\ndln/oJA30+4APFRQYPnO7ZpAGaiWduTcoPru+WXzdmXEQIw/ZVQO5mDQcais\nIzUP5rviiqgK78ptRf9f79992a3hSShDS+jfcLbHqQruUoPY3klIhnMmxHf5\njuqv\r\n=hC7g\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCTAZrPBwM4rnGQqZGQPSbsl3q4iWyu6iqBRTwfr20Q4gIgI4KEHorFRypXigvqKadoNVFjsP/zhcEGtI06fy15bqw="}]},"_npmUser":{"name":"bentoprojectbot","email":"bentobot@amp.dev"},"directories":{},"maintainers":[{"name":"bentoprojectbot","email":"bentobot@amp.dev"},{"name":"kristoferbaxter","email":"kbax@me.com"},{"name":"esth","email":"esther@amp.dev"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/date-display_1.2201262038.1_1644354774579_0.03211660817076134"},"_hasShrinkwrap":false},"1.2202082004.0":{"name":"@bentoproject/date-display","version":"1.2202082004.0","description":"Displays time data that you can render in your page.","author":{"name":"Bento Authors"},"license":"Apache-2.0","main":"./dist/web-component.js","module":"./dist/web-component.module.js","exports":{".":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./web-component":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./preact":{"import":"./dist/component-preact.module.js","require":"./dist/component-preact.js"},"./react":{"import":"./dist/component-react.module.js","require":"./dist/component-react.js"},"./web-component.css":"./dist/web-component.css"},"repository":{"type":"git","url":"git+https://github.com/ampproject/amphtml.git","directory":"extensions/amp-date-display/1.0"},"homepage":"https://github.com/ampproject/amphtml/tree/main/extensions/amp-date-display/1.0","peerDependencies":{"preact":"^10.2.1","react":"^17.0.0"},"readme":"# Bento Date Display\n\nDisplays time data that you can render in your page. By providing specific [attributes](#attributes) in the Bento Date Display tag, the Bento Date Display extension returns a list of time parameters, which you can pass to [an amp-mustache template](../../amp-mustache/amp-mustache.md) for rendering. Refer to the [list below for each returned time parameter](#returned-time-parameters).\n\n## Web Component\n\nWe don't support the web component version of `bento-date-display` since `<template>` support is still being designed. This effort can be tracked in this [issue](https://go.amp.dev/issue/36619).\n\n<!--\nAn older version of this file contains the removed section, though it's incorrect:\n\nhttps://github.com/ampproject/amphtml/blob/422d171e87571c4d125a2bf956e78e92444c10e8/extensions/amp-date-display/1.0/README.md\n-->\n\n---\n\n## Preact/React Component\n\n### Import via npm\n\n```sh\nnpm install @bentoproject/date-display\n```\n\n```javascript\nimport React from 'react';\nimport {BentoDateDisplay} from '@bentoproject/date-display/react';\nimport '@bentoproject/date-display/styles.css';\n\nfunction App() {\n  return (\n    <BentoDateDisplay\n      datetime={dateTime}\n      displayIn={displayIn}\n      locale={locale}\n      render={(date) => (\n        <div>{`ISO: ${date.iso}; locale: ${date.localeString}`}</div>\n      )}\n    />\n  );\n}\n```\n\n### Interactivity and API usage\n\nThe Bento Date Display component does not have an imperative API. However, the Bento Date Display Preact/React component does accept a `render` prop that renders the consumer's template. This `render` prop should be a function which the Bento Date Display Preact/React component can use to render its template. The `render` callback will be provided a variety of date-related parameters for consumers to interpolate in the rendered template. See the [`render` prop section](#render) for more information.\n\n### Layout and style\n\nThe Bento Date Display Preact/React component allows consumers to render their own templates. These templates may use inline styles, `<style>` tags, Preact/React components that import their own stylesheets.\n\n### Props\n\n#### `datetime`\n\nRequired prop. Denotes the date and time as a Date, String, or Nuumber. If String, must be a standard ISO 8601 date string (e.g. 2017-08-02T15:05:05.000Z) or the string `now`. If set to `now`, it will use the time the page loaded to render its template. If Number, must be a POSIX epoch value in milliseconds.\n\n#### `displayIn`\n\nOptional prop that can be either `\"utc\"` or `\"local\"` and defaults to `\"local\"`. This prop indicates what timezone to display the date in. If set to the value `\"utc\"`, the component will convert the given date to UTC.\n\n#### `locale`\n\nAn internationalization language string for each timer unit. The default value is `en` (for English). This prop supports all values that are supported by the user's browser.\n\n#### `localeOptions`\n\nThe `localeOptions` object supports all the options under [Intl.DateTimeFormat.options](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/DateTimeFormat#parameters) parameter that specifies the formatting style to use for `localeString` format.\n\nNote that if the `displayIn` prop is set to `utc`, the value of `localeOptions.timeZone` will automatically be converted to `UTC`.\n\n#### `render`\n\nOptional callback that should render a template. The callback will be provided an object with properties/values related to the date expressed in `datetime`.\n\nBy default, the Bento Date Display component will display the [`localeString` form of the Date](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/toLocaleString) for the given locale and localeOption. See the [Returned Time Parameters section](#returned-time-parameters) for more details on how each property will be displayed.\n\n```typescript\n(dateParams: DateParams) => JSXInternal.Element\ninterface DateParams {\n  day: number;\n  dayName: string;\n  dayNameShort: string;\n  dayPeriod: string;\n  dayTwoDigit: string;\n  hour: number;\n  hour12: number;\n  hour12TwoDigit: string;\n  hourTwoDigit: string;\n  iso: string;\n  localeString: string;\n  minute: number;\n  minuteTwoDigit: string;\n  month: number;\n  monthName: string;\n  monthNameShort: string;\n  monthTwoDigit: string;\n  second: number;\n  secondTwoDigit: string;\n  timeZoneName: string;\n  timeZoneNameShort: string;\n  year: number;\n  yearTwoDi: string;\n}\n```\n\n### Returned Time Parameters\n\nThis table lists the format you can specify in your Mustache template:\n\n| Format            | Meaning                                                       |\n| ----------------- | ------------------------------------------------------------- |\n| day               | 1, 2, ...12, 13, etc.                                         |\n| dayName           | string,                                                       |\n| dayNameShort      | string,                                                       |\n| dayPeriod         | string,                                                       |\n| dayTwoDigit       | 01, 02, 03, ..., 12, 13, etc.                                 |\n| hour              | 0, 1, 2, 3, ..., 12, 13, ..., 22, 23                          |\n| hour12            | 1, 2, 3, ..., 12, 1, 2, ..., 11, 12                           |\n| hour12TwoDigit    | 01, 02, ..., 12, 01, 02, ..., 11, 12                          |\n| hourTwoDigit      | 00, 01, 02, ..., 12, 13, ..., 22, 23                          |\n| iso               | A standard ISO8601 date string e.g. 2019-01-23T15:31:21.213Z, |\n| localeString      | A string with a language sensitive representation.            |\n| minute            | 0, 1, 2, ..., 58, 59                                          |\n| minuteTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| month             | 1, 2, 3, ..., 12                                              |\n| monthName         | Internationalized month name string.                          |\n| monthNameShort    | Internationalized abbreviated month name string.,             |\n| monthTwoDigit     | 01, 02, ..., 11, 12                                           |\n| second            | 0, 1, 2, ..., 58, 59                                          |\n| secondTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| timeZoneName      | Internationalized timezone, like `Pacific Daylight Time`      |\n| timeZoneNameShort | Internationalized timezone, abbreviated, like `PST`           |\n| year              | 0, 1, 2, ..., 1999, 2000, 2001, etc.                          |\n| yearTwoDigit      | 00, 01, 02, ..., 17, 18, 19, ..., 98, 99                      |\n","readmeFilename":"README.md","gitHead":"572ca92abd38a7a42e381c556e12e2d929f26802","bugs":{"url":"https://github.com/ampproject/amphtml/issues"},"_id":"@bentoproject/date-display@1.2202082004.0","_nodeVersion":"16.13.2","_npmVersion":"8.1.2","dist":{"integrity":"sha512-Fz/j3twqwJN90WIpVvFor/FhJClMVG59ZQYT9vPhLyKBAiFcynTOqw/+UtL4WRyqNMW6wqZOF/xcWTpHh4noAw==","shasum":"a50eb818a94033e579685d9ba0275045e824d932","tarball":"https://registry.npmjs.org/@bentoproject/date-display/-/date-display-1.2202082004.0.tgz","fileCount":28,"unpackedSize":900513,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJiBD07CRA9TVsSAnZWagAAWpEP/iHHP6BpK5F/aErA9wqD\nYSh/htGptCnqV5iRgyboELQYOMUhx10iGyELsDTVz+3sFldIVth6cEQ90puE\nHCTk5Jn3uzXDI/c48HmU1KPyfg1c2ePLaHsKgLkiwkv58yRPnrIO7qY8tHGz\n7w/0oNpApq+vbe9uFBTWOqGPM3iUSLwVMKKS9S78wV3WfiLMFx8o0XWpd0a+\nCqcuVz3tdrj8Sn3slSq+BfU9pggMcoHGkquZuRk2BQF3cQAMJwrxy8bIzmi7\nKVQONtzH5/883UpT9FzwRUpIrfpLzO6gUv9VMzT/GYJQUXENcB6q3O7Q9GVy\nCcYhLkMqolDKAQWYTBpYZrQLwgw0PPKEFGD8WZJGl5Q7ntCy/f/rcIlyOm5w\nB0sNOfa8JOK/XckKdQa6t73fWnIooOx8nt2D5vqs/kNAl9g/rI3FJb7S9meC\nO1eLtWqOvV7HVXvcSAkHM6WGNIltAGAkpB14rzIKFqSPRVUFTCnwvxn2qMm7\nwY4OYiErPQKEZhxb+Kk/fgY+tGlPwQ/0VH2dZ/IvSB8O7sX0HZx6E8PU3Zhz\nMwU4qKJgg0InpDV0HZR7GKBYMmELBE97cG/D0pWqzLXR4baFI+IyDeTU7tMZ\nuJRo5/kJk0WAgBSBwBsNtma9I7iYsaTnJ1gBITMBonQJ3V/bTdbYu1O7cV1D\ncX5d\r\n=N6rC\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIGUPYb4mLKYO5wQ0O6TBuvsV39BegHMCeTCXTfGduHCgAiApk2Yb7ztqjaM0osIr3VfozTHOY8jDhKQcONBwCf0eXA=="}]},"_npmUser":{"name":"bentoprojectbot","email":"bentobot@amp.dev"},"directories":{},"maintainers":[{"name":"bentoprojectbot","email":"bentobot@amp.dev"},{"name":"kristoferbaxter","email":"kbax@me.com"},{"name":"esth","email":"esther@amp.dev"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/date-display_1.2202082004.0_1644444987027_0.9932558250049532"},"_hasShrinkwrap":false},"1.2202092050.0":{"name":"@bentoproject/date-display","version":"1.2202092050.0","description":"Displays time data that you can render in your page.","author":{"name":"Bento Authors"},"license":"Apache-2.0","main":"./dist/web-component.js","module":"./dist/web-component.module.js","exports":{".":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./web-component":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./preact":{"import":"./dist/component-preact.module.js","require":"./dist/component-preact.js"},"./react":{"import":"./dist/component-react.module.js","require":"./dist/component-react.js"},"./web-component.css":"./dist/web-component.css"},"repository":{"type":"git","url":"git+https://github.com/ampproject/amphtml.git","directory":"extensions/amp-date-display/1.0"},"homepage":"https://github.com/ampproject/amphtml/tree/main/extensions/amp-date-display/1.0","peerDependencies":{"preact":"^10.2.1","react":"^17.0.0"},"readme":"# Bento Date Display\n\nDisplays time data that you can render in your page. By providing specific [attributes](#attributes) in the Bento Date Display tag, the Bento Date Display extension returns a list of time parameters, which you can pass to [an amp-mustache template](../../amp-mustache/amp-mustache.md) for rendering. Refer to the [list below for each returned time parameter](#returned-time-parameters).\n\n## Web Component\n\nWe don't support the web component version of `bento-date-display` since `<template>` support is still being designed. This effort can be tracked in this [issue](https://go.amp.dev/issue/36619).\n\n<!--\nAn older version of this file contains the removed section, though it's incorrect:\n\nhttps://github.com/ampproject/amphtml/blob/422d171e87571c4d125a2bf956e78e92444c10e8/extensions/amp-date-display/1.0/README.md\n-->\n\n---\n\n## Preact/React Component\n\n### Import via npm\n\n```sh\nnpm install @bentoproject/date-display\n```\n\n```javascript\nimport React from 'react';\nimport {BentoDateDisplay} from '@bentoproject/date-display/react';\nimport '@bentoproject/date-display/styles.css';\n\nfunction App() {\n  return (\n    <BentoDateDisplay\n      datetime={dateTime}\n      displayIn={displayIn}\n      locale={locale}\n      render={(date) => (\n        <div>{`ISO: ${date.iso}; locale: ${date.localeString}`}</div>\n      )}\n    />\n  );\n}\n```\n\n### Interactivity and API usage\n\nThe Bento Date Display component does not have an imperative API. However, the Bento Date Display Preact/React component does accept a `render` prop that renders the consumer's template. This `render` prop should be a function which the Bento Date Display Preact/React component can use to render its template. The `render` callback will be provided a variety of date-related parameters for consumers to interpolate in the rendered template. See the [`render` prop section](#render) for more information.\n\n### Layout and style\n\nThe Bento Date Display Preact/React component allows consumers to render their own templates. These templates may use inline styles, `<style>` tags, Preact/React components that import their own stylesheets.\n\n### Props\n\n#### `datetime`\n\nRequired prop. Denotes the date and time as a Date, String, or Nuumber. If String, must be a standard ISO 8601 date string (e.g. 2017-08-02T15:05:05.000Z) or the string `now`. If set to `now`, it will use the time the page loaded to render its template. If Number, must be a POSIX epoch value in milliseconds.\n\n#### `displayIn`\n\nOptional prop that can be either `\"utc\"` or `\"local\"` and defaults to `\"local\"`. This prop indicates what timezone to display the date in. If set to the value `\"utc\"`, the component will convert the given date to UTC.\n\n#### `locale`\n\nAn internationalization language string for each timer unit. The default value is `en` (for English). This prop supports all values that are supported by the user's browser.\n\n#### `localeOptions`\n\nThe `localeOptions` object supports all the options under [Intl.DateTimeFormat.options](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/DateTimeFormat#parameters) parameter that specifies the formatting style to use for `localeString` format.\n\nNote that if the `displayIn` prop is set to `utc`, the value of `localeOptions.timeZone` will automatically be converted to `UTC`.\n\n#### `render`\n\nOptional callback that should render a template. The callback will be provided an object with properties/values related to the date expressed in `datetime`.\n\nBy default, the Bento Date Display component will display the [`localeString` form of the Date](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/toLocaleString) for the given locale and localeOption. See the [Returned Time Parameters section](#returned-time-parameters) for more details on how each property will be displayed.\n\n```typescript\n(dateParams: DateParams) => JSXInternal.Element\ninterface DateParams {\n  day: number;\n  dayName: string;\n  dayNameShort: string;\n  dayPeriod: string;\n  dayTwoDigit: string;\n  hour: number;\n  hour12: number;\n  hour12TwoDigit: string;\n  hourTwoDigit: string;\n  iso: string;\n  localeString: string;\n  minute: number;\n  minuteTwoDigit: string;\n  month: number;\n  monthName: string;\n  monthNameShort: string;\n  monthTwoDigit: string;\n  second: number;\n  secondTwoDigit: string;\n  timeZoneName: string;\n  timeZoneNameShort: string;\n  year: number;\n  yearTwoDi: string;\n}\n```\n\n### Returned Time Parameters\n\nThis table lists the format you can specify in your Mustache template:\n\n| Format            | Meaning                                                       |\n| ----------------- | ------------------------------------------------------------- |\n| day               | 1, 2, ...12, 13, etc.                                         |\n| dayName           | string,                                                       |\n| dayNameShort      | string,                                                       |\n| dayPeriod         | string,                                                       |\n| dayTwoDigit       | 01, 02, 03, ..., 12, 13, etc.                                 |\n| hour              | 0, 1, 2, 3, ..., 12, 13, ..., 22, 23                          |\n| hour12            | 1, 2, 3, ..., 12, 1, 2, ..., 11, 12                           |\n| hour12TwoDigit    | 01, 02, ..., 12, 01, 02, ..., 11, 12                          |\n| hourTwoDigit      | 00, 01, 02, ..., 12, 13, ..., 22, 23                          |\n| iso               | A standard ISO8601 date string e.g. 2019-01-23T15:31:21.213Z, |\n| localeString      | A string with a language sensitive representation.            |\n| minute            | 0, 1, 2, ..., 58, 59                                          |\n| minuteTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| month             | 1, 2, 3, ..., 12                                              |\n| monthName         | Internationalized month name string.                          |\n| monthNameShort    | Internationalized abbreviated month name string.,             |\n| monthTwoDigit     | 01, 02, ..., 11, 12                                           |\n| second            | 0, 1, 2, ..., 58, 59                                          |\n| secondTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| timeZoneName      | Internationalized timezone, like `Pacific Daylight Time`      |\n| timeZoneNameShort | Internationalized timezone, abbreviated, like `PST`           |\n| year              | 0, 1, 2, ..., 1999, 2000, 2001, etc.                          |\n| yearTwoDigit      | 00, 01, 02, ..., 17, 18, 19, ..., 98, 99                      |\n","readmeFilename":"README.md","gitHead":"37b830a030b935fcd922e108d5afe28be61d68c7","bugs":{"url":"https://github.com/ampproject/amphtml/issues"},"_id":"@bentoproject/date-display@1.2202092050.0","_nodeVersion":"16.13.2","_npmVersion":"8.1.2","dist":{"integrity":"sha512-8wBiiR0jXaIHFugdCY2Gz3ylAIzUeigMC2UHa4t4UhHHENOVuKeyrQYXMb4V7y+GpOCyIyWKI7YF4pzk3KB7gw==","shasum":"a8428c7764ee10aa9a9844002d69d5b73fe8617c","tarball":"https://registry.npmjs.org/@bentoproject/date-display/-/date-display-1.2202092050.0.tgz","fileCount":28,"unpackedSize":900513,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJiBVH2CRA9TVsSAnZWagAAsuAP/i0lmMes7k5CYiaykgWq\nf3xoqRVKRMwu4xok+EqhkA4DfiPWqFoG30cicLmdCqXK5HOGxWLG7awXBuf0\nNLOCzI3DY2/Df/9hf4Gbfu4yOUTBp0iPdw2nKlxoupqdn1tCKnPxn1veMe8z\nF+w9fj4aUyK1B2GCdlNVWrpQQubDfC8I906/ty9PqNKZiwqlA6oU6qDtf9WT\ndqh+XerYNfV1CA6ojo5D46Dg99kmdkMsMy2JN11FwcEmaIX2JSObxoeYhZ9L\npQfzB5nFcBm6pTmJcBKCZ+oKVqf7WFuP9xNTayNLJeEpAPm54UYY4H7FnQMF\nW6MVOJ6W5+HymLpn0A+MglMsbqn8+2DA+tf88sW11ue5IRgvIdqmgcXqX5Zh\n5PI1acFGC2DtuvfNlYmzKqxgyUMm3RXtr09plmW08yfO7yRg14muX+9IttVd\nVuioBHNH3zRF3rk3ITA+RLTOea/UphZjylrVhY2RYSwauZyoRQHGB49if54S\nKn0HzT2ZJiAFJ7OsNN0R3gkXZrU3boEnvAN7wUUMp8sXZbnETncbjV2hVzjN\nkNQaDsfjvddXeyVMh7trrguNeCYgFxzv9uVHdc/qwQTweXjy9w1+8qcGop4G\nA7Sm2H8aqprI6TKeMbCoyJIrhLHIIcyyhyjOj2gomKkQAOlTdxdLEUmNkuzB\nXw/C\r\n=4bJb\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCID5Y+3gUiCvdT5WG988Hevl3aQ4Rr+sV/WoiWfkot1q6AiAx57gOGIniA+Omc2XPdAs9Z/euTFZcPP6zJSD/2W8Alw=="}]},"_npmUser":{"name":"bentoprojectbot","email":"bentobot@amp.dev"},"directories":{},"maintainers":[{"name":"bentoprojectbot","email":"bentobot@amp.dev"},{"name":"kristoferbaxter","email":"kbax@me.com"},{"name":"esth","email":"esther@amp.dev"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/date-display_1.2202092050.0_1644515830262_0.9460318398684768"},"_hasShrinkwrap":false},"1.2202112230.0":{"name":"@bentoproject/date-display","version":"1.2202112230.0","description":"Displays time data that you can render in your page.","author":{"name":"Bento Authors"},"license":"Apache-2.0","main":"./dist/web-component.js","module":"./dist/web-component.module.js","exports":{".":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./web-component":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./preact":{"import":"./dist/component-preact.module.js","require":"./dist/component-preact.js"},"./react":{"import":"./dist/component-react.module.js","require":"./dist/component-react.js"},"./web-component.css":"./dist/web-component.css"},"repository":{"type":"git","url":"git+https://github.com/ampproject/amphtml.git","directory":"extensions/amp-date-display/1.0"},"homepage":"https://github.com/ampproject/amphtml/tree/main/extensions/amp-date-display/1.0","peerDependencies":{"preact":"^10.2.1","react":"^17.0.0"},"readme":"# Bento Date Display\n\nDisplays time data that you can render in your page. By providing specific [attributes](#attributes) in the Bento Date Display tag, the Bento Date Display extension returns a list of time parameters, which you can pass to [an amp-mustache template](../../amp-mustache/amp-mustache.md) for rendering. Refer to the [list below for each returned time parameter](#returned-time-parameters).\n\n## Web Component\n\nWe don't support the web component version of `bento-date-display` since `<template>` support is still being designed. This effort can be tracked in this [issue](https://go.amp.dev/issue/36619).\n\n<!--\nAn older version of this file contains the removed section, though it's incorrect:\n\nhttps://github.com/ampproject/amphtml/blob/422d171e87571c4d125a2bf956e78e92444c10e8/extensions/amp-date-display/1.0/README.md\n-->\n\n---\n\n## Preact/React Component\n\n### Import via npm\n\n```sh\nnpm install @bentoproject/date-display\n```\n\n```javascript\nimport React from 'react';\nimport {BentoDateDisplay} from '@bentoproject/date-display/react';\nimport '@bentoproject/date-display/styles.css';\n\nfunction App() {\n  return (\n    <BentoDateDisplay\n      datetime={dateTime}\n      displayIn={displayIn}\n      locale={locale}\n      render={(date) => (\n        <div>{`ISO: ${date.iso}; locale: ${date.localeString}`}</div>\n      )}\n    />\n  );\n}\n```\n\n### Interactivity and API usage\n\nThe Bento Date Display component does not have an imperative API. However, the Bento Date Display Preact/React component does accept a `render` prop that renders the consumer's template. This `render` prop should be a function which the Bento Date Display Preact/React component can use to render its template. The `render` callback will be provided a variety of date-related parameters for consumers to interpolate in the rendered template. See the [`render` prop section](#render) for more information.\n\n### Layout and style\n\nThe Bento Date Display Preact/React component allows consumers to render their own templates. These templates may use inline styles, `<style>` tags, Preact/React components that import their own stylesheets.\n\n### Props\n\n#### `datetime`\n\nRequired prop. Denotes the date and time as a Date, String, or Nuumber. If String, must be a standard ISO 8601 date string (e.g. 2017-08-02T15:05:05.000Z) or the string `now`. If set to `now`, it will use the time the page loaded to render its template. If Number, must be a POSIX epoch value in milliseconds.\n\n#### `displayIn`\n\nOptional prop that can be either `\"utc\"` or `\"local\"` and defaults to `\"local\"`. This prop indicates what timezone to display the date in. If set to the value `\"utc\"`, the component will convert the given date to UTC.\n\n#### `locale`\n\nAn internationalization language string for each timer unit. The default value is `en` (for English). This prop supports all values that are supported by the user's browser.\n\n#### `localeOptions`\n\nThe `localeOptions` object supports all the options under [Intl.DateTimeFormat.options](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/DateTimeFormat#parameters) parameter that specifies the formatting style to use for `localeString` format.\n\nNote that if the `displayIn` prop is set to `utc`, the value of `localeOptions.timeZone` will automatically be converted to `UTC`.\n\n#### `render`\n\nOptional callback that should render a template. The callback will be provided an object with properties/values related to the date expressed in `datetime`.\n\nBy default, the Bento Date Display component will display the [`localeString` form of the Date](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/toLocaleString) for the given locale and localeOption. See the [Returned Time Parameters section](#returned-time-parameters) for more details on how each property will be displayed.\n\n```typescript\n(dateParams: DateParams) => JSXInternal.Element\ninterface DateParams {\n  day: number;\n  dayName: string;\n  dayNameShort: string;\n  dayPeriod: string;\n  dayTwoDigit: string;\n  hour: number;\n  hour12: number;\n  hour12TwoDigit: string;\n  hourTwoDigit: string;\n  iso: string;\n  localeString: string;\n  minute: number;\n  minuteTwoDigit: string;\n  month: number;\n  monthName: string;\n  monthNameShort: string;\n  monthTwoDigit: string;\n  second: number;\n  secondTwoDigit: string;\n  timeZoneName: string;\n  timeZoneNameShort: string;\n  year: number;\n  yearTwoDi: string;\n}\n```\n\n### Returned Time Parameters\n\nThis table lists the format you can specify in your Mustache template:\n\n| Format            | Meaning                                                       |\n| ----------------- | ------------------------------------------------------------- |\n| day               | 1, 2, ...12, 13, etc.                                         |\n| dayName           | string,                                                       |\n| dayNameShort      | string,                                                       |\n| dayPeriod         | string,                                                       |\n| dayTwoDigit       | 01, 02, 03, ..., 12, 13, etc.                                 |\n| hour              | 0, 1, 2, 3, ..., 12, 13, ..., 22, 23                          |\n| hour12            | 1, 2, 3, ..., 12, 1, 2, ..., 11, 12                           |\n| hour12TwoDigit    | 01, 02, ..., 12, 01, 02, ..., 11, 12                          |\n| hourTwoDigit      | 00, 01, 02, ..., 12, 13, ..., 22, 23                          |\n| iso               | A standard ISO8601 date string e.g. 2019-01-23T15:31:21.213Z, |\n| localeString      | A string with a language sensitive representation.            |\n| minute            | 0, 1, 2, ..., 58, 59                                          |\n| minuteTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| month             | 1, 2, 3, ..., 12                                              |\n| monthName         | Internationalized month name string.                          |\n| monthNameShort    | Internationalized abbreviated month name string.,             |\n| monthTwoDigit     | 01, 02, ..., 11, 12                                           |\n| second            | 0, 1, 2, ..., 58, 59                                          |\n| secondTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| timeZoneName      | Internationalized timezone, like `Pacific Daylight Time`      |\n| timeZoneNameShort | Internationalized timezone, abbreviated, like `PST`           |\n| year              | 0, 1, 2, ..., 1999, 2000, 2001, etc.                          |\n| yearTwoDigit      | 00, 01, 02, ..., 17, 18, 19, ..., 98, 99                      |\n","readmeFilename":"README.md","gitHead":"42cc51fbf53c86e33b0a12004dfe9c35b8f5d0fa","bugs":{"url":"https://github.com/ampproject/amphtml/issues"},"_id":"@bentoproject/date-display@1.2202112230.0","_nodeVersion":"16.13.2","_npmVersion":"8.1.2","dist":{"integrity":"sha512-aaaBF/CI+8IV8jU0oTWwxvP03+Rneochel3mEZaOzwghzGgLSMyUULV4z+KY25eKCyCf8K7NTUs+8ZPwkdWHCg==","shasum":"c11a51a1665682a962c032f7bfd317aca8c341d0","tarball":"https://registry.npmjs.org/@bentoproject/date-display/-/date-display-1.2202112230.0.tgz","fileCount":28,"unpackedSize":981449,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJiCsQ0CRA9TVsSAnZWagAAmigP/jwKbMyplhrUTFOZcm+u\nal2ib1i04QMovppYFJLyAKOb1EXZ7eHUzKG88LK1oqYCahTcq/lhcxKUcfRZ\nhNBen27lB+jkvB9c+qhERHqB1K/8D6tD4yWddSaojCiTuj3SAdC4so6xtJTq\n05lzGOHj1yF4QJNNkHLblFRMfVLOWZUmpcP3NFX7HilECwGN6YdCyilWP2fc\nAlMp5YunH7cCLUF2P9qd0Ux6REPPFHtBOqXSY72l8lKMVLG+D/okLEqoAuuY\nu4tZuY530xSlPYi38/IlE1yHx3m/tQLz2xBuH3ahVrTpDxnqouFBZrfTZV2t\nPL1PeuO0hqBXF7YMebsEk+wajNOk/EhNkmXGL6j7S4eg/gvc0Yd6k7naWIED\ndF0JNi7fJisrG4jygG8Iz209HloolgTH0bseu9Ln8rKSSo1/6HjiXvCjyUH/\n2BsR1OAzZS0eUPtJ7Ie8nZ70imTddMSRTpazGMs+eulW+d8kDc1qWXmnVnhP\nthxFsBL7Vbx7O25HE+OvhVWcmsLaP6920ihx1wLHRkmjKxr4yy11Z6s4eTpA\ntXc3Vn27g5sTv8a4yUKSDAiNtex+7tgGJsCOjJfUSzHiIv5F71L5XcI8I4VE\nCyVbN15kuNl2cZ+XeSnxWoSJWFXDHfsrqrWFe5f4S/n45kR0hXt688c03rVz\na5V9\r\n=tjEv\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIF+rwy4iZ5MTRlyGKnnwJ1R70r9lYEWlFyEfNlUZDG/NAiBzDHfVrkB/z0PFd1HcnVzJ73Kxm330TL1k+nxGwOoO7Q=="}]},"_npmUser":{"name":"bentoprojectbot","email":"bentobot@amp.dev"},"directories":{},"maintainers":[{"name":"bentoprojectbot","email":"bentobot@amp.dev"},{"name":"kristoferbaxter","email":"kbax@me.com"},{"name":"esth","email":"esther@amp.dev"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/date-display_1.2202112230.0_1644872755769_0.6660818443643775"},"_hasShrinkwrap":false},"1.2202142035.0":{"name":"@bentoproject/date-display","version":"1.2202142035.0","description":"Displays time data that you can render in your page.","author":{"name":"Bento Authors"},"license":"Apache-2.0","main":"./dist/web-component.js","module":"./dist/web-component.module.js","exports":{".":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./web-component":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./preact":{"import":"./dist/component-preact.module.js","require":"./dist/component-preact.js"},"./react":{"import":"./dist/component-react.module.js","require":"./dist/component-react.js"},"./web-component.css":"./dist/web-component.css"},"repository":{"type":"git","url":"git+https://github.com/ampproject/amphtml.git","directory":"extensions/amp-date-display/1.0"},"homepage":"https://github.com/ampproject/amphtml/tree/main/extensions/amp-date-display/1.0","peerDependencies":{"preact":"^10.2.1","react":"^17.0.0"},"readme":"# Bento Date Display\n\nDisplays time data that you can render in your page. By providing specific [attributes](#attributes) in the Bento Date Display tag, the Bento Date Display extension returns a list of time parameters, which you can pass to [an amp-mustache template](../../amp-mustache/amp-mustache.md) for rendering. Refer to the [list below for each returned time parameter](#returned-time-parameters).\n\n## Web Component\n\nWe don't support the web component version of `bento-date-display` since `<template>` support is still being designed. This effort can be tracked in this [issue](https://go.amp.dev/issue/36619).\n\n<!--\nAn older version of this file contains the removed section, though it's incorrect:\n\nhttps://github.com/ampproject/amphtml/blob/422d171e87571c4d125a2bf956e78e92444c10e8/extensions/amp-date-display/1.0/README.md\n-->\n\n---\n\n## Preact/React Component\n\n### Import via npm\n\n```sh\nnpm install @bentoproject/date-display\n```\n\n```javascript\nimport React from 'react';\nimport {BentoDateDisplay} from '@bentoproject/date-display/react';\nimport '@bentoproject/date-display/styles.css';\n\nfunction App() {\n  return (\n    <BentoDateDisplay\n      datetime={dateTime}\n      displayIn={displayIn}\n      locale={locale}\n      render={(date) => (\n        <div>{`ISO: ${date.iso}; locale: ${date.localeString}`}</div>\n      )}\n    />\n  );\n}\n```\n\n### Interactivity and API usage\n\nThe Bento Date Display component does not have an imperative API. However, the Bento Date Display Preact/React component does accept a `render` prop that renders the consumer's template. This `render` prop should be a function which the Bento Date Display Preact/React component can use to render its template. The `render` callback will be provided a variety of date-related parameters for consumers to interpolate in the rendered template. See the [`render` prop section](#render) for more information.\n\n### Layout and style\n\nThe Bento Date Display Preact/React component allows consumers to render their own templates. These templates may use inline styles, `<style>` tags, Preact/React components that import their own stylesheets.\n\n### Props\n\n#### `datetime`\n\nRequired prop. Denotes the date and time as a Date, String, or Nuumber. If String, must be a standard ISO 8601 date string (e.g. 2017-08-02T15:05:05.000Z) or the string `now`. If set to `now`, it will use the time the page loaded to render its template. If Number, must be a POSIX epoch value in milliseconds.\n\n#### `displayIn`\n\nOptional prop that can be either `\"utc\"` or `\"local\"` and defaults to `\"local\"`. This prop indicates what timezone to display the date in. If set to the value `\"utc\"`, the component will convert the given date to UTC.\n\n#### `locale`\n\nAn internationalization language string for each timer unit. The default value is `en` (for English). This prop supports all values that are supported by the user's browser.\n\n#### `localeOptions`\n\nThe `localeOptions` object supports all the options under [Intl.DateTimeFormat.options](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/DateTimeFormat#parameters) parameter that specifies the formatting style to use for `localeString` format.\n\nNote that if the `displayIn` prop is set to `utc`, the value of `localeOptions.timeZone` will automatically be converted to `UTC`.\n\n#### `render`\n\nOptional callback that should render a template. The callback will be provided an object with properties/values related to the date expressed in `datetime`.\n\nBy default, the Bento Date Display component will display the [`localeString` form of the Date](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/toLocaleString) for the given locale and localeOption. See the [Returned Time Parameters section](#returned-time-parameters) for more details on how each property will be displayed.\n\n```typescript\n(dateParams: DateParams) => JSXInternal.Element\ninterface DateParams {\n  day: number;\n  dayName: string;\n  dayNameShort: string;\n  dayPeriod: string;\n  dayTwoDigit: string;\n  hour: number;\n  hour12: number;\n  hour12TwoDigit: string;\n  hourTwoDigit: string;\n  iso: string;\n  localeString: string;\n  minute: number;\n  minuteTwoDigit: string;\n  month: number;\n  monthName: string;\n  monthNameShort: string;\n  monthTwoDigit: string;\n  second: number;\n  secondTwoDigit: string;\n  timeZoneName: string;\n  timeZoneNameShort: string;\n  year: number;\n  yearTwoDi: string;\n}\n```\n\n### Returned Time Parameters\n\nThis table lists the format you can specify in your Mustache template:\n\n| Format            | Meaning                                                       |\n| ----------------- | ------------------------------------------------------------- |\n| day               | 1, 2, ...12, 13, etc.                                         |\n| dayName           | string,                                                       |\n| dayNameShort      | string,                                                       |\n| dayPeriod         | string,                                                       |\n| dayTwoDigit       | 01, 02, 03, ..., 12, 13, etc.                                 |\n| hour              | 0, 1, 2, 3, ..., 12, 13, ..., 22, 23                          |\n| hour12            | 1, 2, 3, ..., 12, 1, 2, ..., 11, 12                           |\n| hour12TwoDigit    | 01, 02, ..., 12, 01, 02, ..., 11, 12                          |\n| hourTwoDigit      | 00, 01, 02, ..., 12, 13, ..., 22, 23                          |\n| iso               | A standard ISO8601 date string e.g. 2019-01-23T15:31:21.213Z, |\n| localeString      | A string with a language sensitive representation.            |\n| minute            | 0, 1, 2, ..., 58, 59                                          |\n| minuteTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| month             | 1, 2, 3, ..., 12                                              |\n| monthName         | Internationalized month name string.                          |\n| monthNameShort    | Internationalized abbreviated month name string.,             |\n| monthTwoDigit     | 01, 02, ..., 11, 12                                           |\n| second            | 0, 1, 2, ..., 58, 59                                          |\n| secondTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| timeZoneName      | Internationalized timezone, like `Pacific Daylight Time`      |\n| timeZoneNameShort | Internationalized timezone, abbreviated, like `PST`           |\n| year              | 0, 1, 2, ..., 1999, 2000, 2001, etc.                          |\n| yearTwoDigit      | 00, 01, 02, ..., 17, 18, 19, ..., 98, 99                      |\n","readmeFilename":"README.md","gitHead":"4bb5570c3d04ec8e2a88418e8ed8b420e5b31ce2","bugs":{"url":"https://github.com/ampproject/amphtml/issues"},"_id":"@bentoproject/date-display@1.2202142035.0","_nodeVersion":"16.13.2","_npmVersion":"8.1.2","dist":{"integrity":"sha512-0UgD97Dx4FK43Y9b+gYR7hnYqBEo8JRrQNgQLFG/62LkwaMEuLEZlZxRHp9B8GmRVTfKqaEx7JrJ8VDPDZBrLw==","shasum":"500e6907e86e5025c49361be24c05bd1f958d019","tarball":"https://registry.npmjs.org/@bentoproject/date-display/-/date-display-1.2202142035.0.tgz","fileCount":28,"unpackedSize":981449,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJiC3F+CRA9TVsSAnZWagAA5RIP/j/SZwRZg3HowwqlE8Di\naP0DmWACuw/a2jPKXNFQJzaxy8/O+8YvY+G0ZGQNelRy8tWj6FaJ+7HGGtuh\nUBnRfn0MG/ty2os3kz3GftlxlhSqhVw+VgG5e1Gxu3YPdarKF3+lAWDPfT7F\nS8/O76hfeO7Wo28SbTrg6IX+6uqFUHeUZ6Qciyjik+DyRdUcnZT/p609C0tP\nUXoyw1bdpdKNF1iU8dkjVNzRQbrm0DtC/0wED7WLj7AYXbBYVHN06CUbbp9B\nSeBsNSl8JoA5UvgwRC9DYzKY0oLDkrNggTxxc8Sg7VSw7vYJbLNeUClwgth0\n7pW8qRR+PFds2Q2a2iwlDrbNPwL7vpSYbrurR9RQlJV5KQsniI5ieW05bu9P\nudx9TkW2lz2FwUT1a2I9DJ6HWZLSIp8BAPwtg8ExvGht6PIiz7DPoEF9DWM1\nS5IJ7zH2yssTdh19MCslQYCYRj3WtRrgaY2ObLFSTiRIKgDGq62KDx55f4jG\nHtYQ06txsf8FbdfRC0BLD7biwPtBPC6aZ0PYIGlUOkbEDFW7v3JoW/1x6gLK\nCl2HQdVcYJ6vshJs/j1B1eSD4Z/0Wu4eNLxsz5Htk2yyJQ0tNo65n97ZSb8T\nOpRhK8I+J+DgBRRX8U7bdzN5MfoxZB31LSHwWM3seQuIL7D2h0o7sqJnlaQp\nDPnE\r\n=OLll\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQD3WW9l4LX7PaosQQG7i7US1fr0cImNoeiftpLseykYiAIhALQgNpGTQ/vB52MQETUvotx1zaX1DZF0J4BYH1joThem"}]},"_npmUser":{"name":"bentoprojectbot","email":"bentobot@amp.dev"},"directories":{},"maintainers":[{"name":"bentoprojectbot","email":"bentobot@amp.dev"},{"name":"kristoferbaxter","email":"kbax@me.com"},{"name":"esth","email":"esther@amp.dev"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/date-display_1.2202142035.0_1644917117963_0.469300182052524"},"_hasShrinkwrap":false},"1.2202042210.1":{"name":"@bentoproject/date-display","version":"1.2202042210.1","description":"Displays time data that you can render in your page.","author":{"name":"Bento Authors"},"license":"Apache-2.0","main":"./dist/web-component.js","module":"./dist/web-component.module.js","exports":{".":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./web-component":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./preact":{"import":"./dist/component-preact.module.js","require":"./dist/component-preact.js"},"./react":{"import":"./dist/component-react.module.js","require":"./dist/component-react.js"},"./web-component.css":"./dist/web-component.css"},"repository":{"type":"git","url":"git+https://github.com/ampproject/amphtml.git","directory":"extensions/amp-date-display/1.0"},"homepage":"https://github.com/ampproject/amphtml/tree/main/extensions/amp-date-display/1.0","peerDependencies":{"preact":"^10.2.1","react":"^17.0.0"},"gitHead":"a656b221ffc7e0c9f092bede5668a546628e9512","bugs":{"url":"https://github.com/ampproject/amphtml/issues"},"_id":"@bentoproject/date-display@1.2202042210.1","_nodeVersion":"16.13.2","_npmVersion":"8.1.2","dist":{"integrity":"sha512-/UCDlqe8kkUNajLv5uDnbufGY+CgUG/hQvEe39LWXcRORb/9OR+9ZOXtqOuYtgD64iT2Qvnr4lkYroKrwOqz9Q==","shasum":"ccc8e69122b5c157d92b70175b3536677649263a","tarball":"https://registry.npmjs.org/@bentoproject/date-display/-/date-display-1.2202042210.1.tgz","fileCount":28,"unpackedSize":981948,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJiC++MCRA9TVsSAnZWagAAiEMQAJkkmOvgrnc3h4L/i+GW\npHvU0wmjFS2caOmArJm+ha9ArnvsiCLeaCSHOKMUNG4kKHMqbWckX1UEZQk+\nYKrbAsUbdInGNPIQWn5mletPeouhC2Bc61mAYaZKitnsJ6EkZGt2BY0Augg9\nIFHabyxMcf/6nxW9CKZ/1y3DIQiP9/zKByMpYszcbn9GTj4gFANwIaCMg5To\nvP8ejOu3ceGepA6uWfKjcOKUvBoRma8+JtCLn7RK65sAxnGAQjfqUUkFQfin\nR3zRe3K35Z9BLmIlZgI0i8qgkoJffsylUAMZf16GZqCq/qzuSsajlVnjHWyo\n5S7g09ynrpFCCBPQRJ3LkR/9WnLrUV/Mwy3m3QoBH+WKzUvc0OK4bJtmEjN+\nYces6S9/u5Er0Al2k5lpnx7aOMybKArMZw15dYbQS7iPx4qJoeSQ/uxceX3f\nxIY8nzmJSJiGBF+L7B00MWiM7lFSMoNxaADFfvea9VBW2XFbQxuJrKxsvg3u\nfpHjTUO0Xkn1tbBEYujtQnUAtd2MUSw4r4gZLxpeeooreTMH9ocz9pseTWVG\n9bEQ++ovgJl4YTp8wqAJnyrz+6sPNaX1SjRGjeTh3pmZdRUiaUlLVK14foho\nDs2KP+x3SDjxm1jTcnzGfjVCfHk44RzVN/xqREknDp+gP2PY6ELTAnEE1pmY\nZanY\r\n=xqxC\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIHPVaNk+vRkpJn8Up11TklI/+sd0g1Gm6eDEqjd60aQ2AiEAhQDK3bbbzKC5Ejw8f9OhEM8mMlhoHI10TC1YHds0Y/U="}]},"_npmUser":{"name":"bentoprojectbot","email":"bentobot@amp.dev"},"directories":{},"maintainers":[{"name":"bentoprojectbot","email":"bentobot@amp.dev"},{"name":"kristoferbaxter","email":"kbax@me.com"},{"name":"esth","email":"esther@amp.dev"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/date-display_1.2202042210.1_1644949388086_0.6446403812152148"},"_hasShrinkwrap":false},"1.2202152253.0":{"name":"@bentoproject/date-display","version":"1.2202152253.0","description":"Displays time data that you can render in your page.","author":{"name":"Bento Authors"},"license":"Apache-2.0","main":"./dist/web-component.js","module":"./dist/web-component.module.js","exports":{".":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./web-component":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./preact":{"import":"./dist/component-preact.module.js","require":"./dist/component-preact.js"},"./react":{"import":"./dist/component-react.module.js","require":"./dist/component-react.js"},"./web-component.css":"./dist/web-component.css"},"repository":{"type":"git","url":"git+https://github.com/ampproject/amphtml.git","directory":"extensions/amp-date-display/1.0"},"homepage":"https://github.com/ampproject/amphtml/tree/main/extensions/amp-date-display/1.0","peerDependencies":{"preact":"^10.2.1","react":"^17.0.0"},"readme":"# Bento Date Display\n\nDisplays time data that you can render in your page. By providing specific [attributes](#attributes) in the Bento Date Display tag, the Bento Date Display extension returns a list of time parameters, which you can pass to [an amp-mustache template](../../amp-mustache/amp-mustache.md) for rendering. Refer to the [list below for each returned time parameter](#returned-time-parameters).\n\n## Web Component\n\nWe don't support the web component version of `bento-date-display` since `<template>` support is still being designed. This effort can be tracked in this [issue](https://go.amp.dev/issue/36619).\n\n<!--\nAn older version of this file contains the removed section, though it's incorrect:\n\nhttps://github.com/ampproject/amphtml/blob/422d171e87571c4d125a2bf956e78e92444c10e8/extensions/amp-date-display/1.0/README.md\n-->\n\n---\n\n## Preact/React Component\n\n### Import via npm\n\n```sh\nnpm install @bentoproject/date-display\n```\n\n```javascript\nimport React from 'react';\nimport {BentoDateDisplay} from '@bentoproject/date-display/react';\nimport '@bentoproject/date-display/styles.css';\n\nfunction App() {\n  return (\n    <BentoDateDisplay\n      datetime={dateTime}\n      displayIn={displayIn}\n      locale={locale}\n      render={(date) => (\n        <div>{`ISO: ${date.iso}; locale: ${date.localeString}`}</div>\n      )}\n    />\n  );\n}\n```\n\n### Interactivity and API usage\n\nThe Bento Date Display component does not have an imperative API. However, the Bento Date Display Preact/React component does accept a `render` prop that renders the consumer's template. This `render` prop should be a function which the Bento Date Display Preact/React component can use to render its template. The `render` callback will be provided a variety of date-related parameters for consumers to interpolate in the rendered template. See the [`render` prop section](#render) for more information.\n\n### Layout and style\n\nThe Bento Date Display Preact/React component allows consumers to render their own templates. These templates may use inline styles, `<style>` tags, Preact/React components that import their own stylesheets.\n\n### Props\n\n#### `datetime`\n\nRequired prop. Denotes the date and time as a Date, String, or Nuumber. If String, must be a standard ISO 8601 date string (e.g. 2017-08-02T15:05:05.000Z) or the string `now`. If set to `now`, it will use the time the page loaded to render its template. If Number, must be a POSIX epoch value in milliseconds.\n\n#### `displayIn`\n\nOptional prop that can be either `\"utc\"` or `\"local\"` and defaults to `\"local\"`. This prop indicates what timezone to display the date in. If set to the value `\"utc\"`, the component will convert the given date to UTC.\n\n#### `locale`\n\nAn internationalization language string for each timer unit. The default value is `en` (for English). This prop supports all values that are supported by the user's browser.\n\n#### `localeOptions`\n\nThe `localeOptions` object supports all the options under [Intl.DateTimeFormat.options](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/DateTimeFormat#parameters) parameter that specifies the formatting style to use for `localeString` format.\n\nNote that if the `displayIn` prop is set to `utc`, the value of `localeOptions.timeZone` will automatically be converted to `UTC`.\n\n#### `render`\n\nOptional callback that should render a template. The callback will be provided an object with properties/values related to the date expressed in `datetime`.\n\nBy default, the Bento Date Display component will display the [`localeString` form of the Date](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/toLocaleString) for the given locale and localeOption. See the [Returned Time Parameters section](#returned-time-parameters) for more details on how each property will be displayed.\n\n```typescript\n(dateParams: DateParams) => JSXInternal.Element\ninterface DateParams {\n  day: number;\n  dayName: string;\n  dayNameShort: string;\n  dayPeriod: string;\n  dayTwoDigit: string;\n  hour: number;\n  hour12: number;\n  hour12TwoDigit: string;\n  hourTwoDigit: string;\n  iso: string;\n  localeString: string;\n  minute: number;\n  minuteTwoDigit: string;\n  month: number;\n  monthName: string;\n  monthNameShort: string;\n  monthTwoDigit: string;\n  second: number;\n  secondTwoDigit: string;\n  timeZoneName: string;\n  timeZoneNameShort: string;\n  year: number;\n  yearTwoDi: string;\n}\n```\n\n### Returned Time Parameters\n\nThis table lists the format you can specify in your Mustache template:\n\n| Format            | Meaning                                                       |\n| ----------------- | ------------------------------------------------------------- |\n| day               | 1, 2, ...12, 13, etc.                                         |\n| dayName           | string,                                                       |\n| dayNameShort      | string,                                                       |\n| dayPeriod         | string,                                                       |\n| dayTwoDigit       | 01, 02, 03, ..., 12, 13, etc.                                 |\n| hour              | 0, 1, 2, 3, ..., 12, 13, ..., 22, 23                          |\n| hour12            | 1, 2, 3, ..., 12, 1, 2, ..., 11, 12                           |\n| hour12TwoDigit    | 01, 02, ..., 12, 01, 02, ..., 11, 12                          |\n| hourTwoDigit      | 00, 01, 02, ..., 12, 13, ..., 22, 23                          |\n| iso               | A standard ISO8601 date string e.g. 2019-01-23T15:31:21.213Z, |\n| localeString      | A string with a language sensitive representation.            |\n| minute            | 0, 1, 2, ..., 58, 59                                          |\n| minuteTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| month             | 1, 2, 3, ..., 12                                              |\n| monthName         | Internationalized month name string.                          |\n| monthNameShort    | Internationalized abbreviated month name string.,             |\n| monthTwoDigit     | 01, 02, ..., 11, 12                                           |\n| second            | 0, 1, 2, ..., 58, 59                                          |\n| secondTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| timeZoneName      | Internationalized timezone, like `Pacific Daylight Time`      |\n| timeZoneNameShort | Internationalized timezone, abbreviated, like `PST`           |\n| year              | 0, 1, 2, ..., 1999, 2000, 2001, etc.                          |\n| yearTwoDigit      | 00, 01, 02, ..., 17, 18, 19, ..., 98, 99                      |\n","readmeFilename":"README.md","gitHead":"a50f1711cb8aecae95387e7f6b1fd1862206166b","bugs":{"url":"https://github.com/ampproject/amphtml/issues"},"_id":"@bentoproject/date-display@1.2202152253.0","_nodeVersion":"16.13.2","_npmVersion":"8.1.2","dist":{"integrity":"sha512-MIljbgCYbtAQDBO1GoYuc9//pOMIRv4o7b/drZrUAbvM40DYhrV9KUGtSBdAoGiacysCX7Gu8jcDQw7azMDf8A==","shasum":"848ca79f7885174ac2c232834f9e89637eef25e8","tarball":"https://registry.npmjs.org/@bentoproject/date-display/-/date-display-1.2202152253.0.tgz","fileCount":28,"unpackedSize":981449,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJiDL8xCRA9TVsSAnZWagAA+YgP/3XFCiL1Ctvly7cvM2k1\nKo1l1wMc1fB5TXASWQWaSv5FBTGo6B5M/5TtIF6k9nxighq4TT5sT+TMtN4R\neN/6ITfrfAyTIIEiQmzGybBOEQ/EGftO8HNZoGSU59MoodiuF7c6zYsTqpBd\njP3NmI1PzdDBVXcZSpsVkS7FOpyt2zHnFFNERo8Yg/yz3ggbDDOVpnwWX3DI\nHtn76SjqKdSnRIMqSuXw3fzhHn0kQU51au7MyCa8MNof6M2pHekSRHrhudX1\nzSx+EqzgnR5bm+CAqhCNpilqZH24VfH+ksXkQHrzdMkhFRhhD2/MQwzxFlcm\n4M+gqndbnzFuwfMEnixx4d0BReYmQFqmimU1YDC6eKX9s8vCty5ppruDaeD/\naggyDZmaEEAbTJihiReJ9EpE4NpQjlXY+0k8Ucq4/3UZtY2pBviOxavLdCUy\nkcLVUHzpXdAk196fNDVU+k7Itez0inmijYlATRt7Sy6kN0gzBUTIj7v9r2PT\nvY+RJFx7hQj00O2zep0jk1nh5YjfMdk+FFI6KMG9od9UxHPqHpVpISQQv07B\nh4toMbrN5BctwLDeV50ApGyZU2r/nlAtPzYEH+GzY6CEkO9Iv0JZZPpd+qFR\n3Pk2w95zSqEmsWpxjag0kaan5rXClToDeRshJGSLGO0xW8ETy0o9Tk/WFGHi\nB6J8\r\n=H2uc\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIFdMkta53xBO7CRL0T6LlbVDe90wSm8UR7knh38EyMjVAiEA8tbXhiSUwMYj5/7BvH7BddEpkBFT2hjL7iOh+d/vaBs="}]},"_npmUser":{"name":"bentoprojectbot","email":"bentobot@amp.dev"},"directories":{},"maintainers":[{"name":"bentoprojectbot","email":"bentobot@amp.dev"},{"name":"kristoferbaxter","email":"kbax@me.com"},{"name":"esth","email":"esther@amp.dev"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/date-display_1.2202152253.0_1645002545138_0.3793031988102018"},"_hasShrinkwrap":false},"1.2202162256.0":{"name":"@bentoproject/date-display","version":"1.2202162256.0","description":"Displays time data that you can render in your page.","author":{"name":"Bento Authors"},"license":"Apache-2.0","main":"./dist/web-component.js","module":"./dist/web-component.module.js","exports":{".":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./web-component":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./preact":{"import":"./dist/component-preact.module.js","require":"./dist/component-preact.js"},"./react":{"import":"./dist/component-react.module.js","require":"./dist/component-react.js"},"./web-component.css":"./dist/web-component.css"},"repository":{"type":"git","url":"git+https://github.com/ampproject/amphtml.git","directory":"extensions/amp-date-display/1.0"},"homepage":"https://github.com/ampproject/amphtml/tree/main/extensions/amp-date-display/1.0","peerDependencies":{"preact":"^10.2.1","react":"^17.0.0"},"readme":"# Bento Date Display\n\nDisplays time data that you can render in your page. By providing specific [attributes](#attributes) in the Bento Date Display tag, the Bento Date Display extension returns a list of time parameters, which you can pass to [an amp-mustache template](../../amp-mustache/amp-mustache.md) for rendering. Refer to the [list below for each returned time parameter](#returned-time-parameters).\n\n## Web Component\n\nWe don't support the web component version of `bento-date-display` since `<template>` support is still being designed. This effort can be tracked in this [issue](https://go.amp.dev/issue/36619).\n\n<!--\nAn older version of this file contains the removed section, though it's incorrect:\n\nhttps://github.com/ampproject/amphtml/blob/422d171e87571c4d125a2bf956e78e92444c10e8/extensions/amp-date-display/1.0/README.md\n-->\n\n---\n\n## Preact/React Component\n\n### Import via npm\n\n```sh\nnpm install @bentoproject/date-display\n```\n\n```javascript\nimport React from 'react';\nimport {BentoDateDisplay} from '@bentoproject/date-display/react';\nimport '@bentoproject/date-display/styles.css';\n\nfunction App() {\n  return (\n    <BentoDateDisplay\n      datetime={dateTime}\n      displayIn={displayIn}\n      locale={locale}\n      render={(date) => (\n        <div>{`ISO: ${date.iso}; locale: ${date.localeString}`}</div>\n      )}\n    />\n  );\n}\n```\n\n### Interactivity and API usage\n\nThe Bento Date Display component does not have an imperative API. However, the Bento Date Display Preact/React component does accept a `render` prop that renders the consumer's template. This `render` prop should be a function which the Bento Date Display Preact/React component can use to render its template. The `render` callback will be provided a variety of date-related parameters for consumers to interpolate in the rendered template. See the [`render` prop section](#render) for more information.\n\n### Layout and style\n\nThe Bento Date Display Preact/React component allows consumers to render their own templates. These templates may use inline styles, `<style>` tags, Preact/React components that import their own stylesheets.\n\n### Props\n\n#### `datetime`\n\nRequired prop. Denotes the date and time as a Date, String, or Nuumber. If String, must be a standard ISO 8601 date string (e.g. 2017-08-02T15:05:05.000Z) or the string `now`. If set to `now`, it will use the time the page loaded to render its template. If Number, must be a POSIX epoch value in milliseconds.\n\n#### `displayIn`\n\nOptional prop that can be either `\"utc\"` or `\"local\"` and defaults to `\"local\"`. This prop indicates what timezone to display the date in. If set to the value `\"utc\"`, the component will convert the given date to UTC.\n\n#### `locale`\n\nAn internationalization language string for each timer unit. The default value is `en` (for English). This prop supports all values that are supported by the user's browser.\n\n#### `localeOptions`\n\nThe `localeOptions` object supports all the options under [Intl.DateTimeFormat.options](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/DateTimeFormat#parameters) parameter that specifies the formatting style to use for `localeString` format.\n\nNote that if the `displayIn` prop is set to `utc`, the value of `localeOptions.timeZone` will automatically be converted to `UTC`.\n\n#### `render`\n\nOptional callback that should render a template. The callback will be provided an object with properties/values related to the date expressed in `datetime`.\n\nBy default, the Bento Date Display component will display the [`localeString` form of the Date](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/toLocaleString) for the given locale and localeOption. See the [Returned Time Parameters section](#returned-time-parameters) for more details on how each property will be displayed.\n\n```typescript\n(dateParams: DateParams) => JSXInternal.Element\ninterface DateParams {\n  day: number;\n  dayName: string;\n  dayNameShort: string;\n  dayPeriod: string;\n  dayTwoDigit: string;\n  hour: number;\n  hour12: number;\n  hour12TwoDigit: string;\n  hourTwoDigit: string;\n  iso: string;\n  localeString: string;\n  minute: number;\n  minuteTwoDigit: string;\n  month: number;\n  monthName: string;\n  monthNameShort: string;\n  monthTwoDigit: string;\n  second: number;\n  secondTwoDigit: string;\n  timeZoneName: string;\n  timeZoneNameShort: string;\n  year: number;\n  yearTwoDi: string;\n}\n```\n\n### Returned Time Parameters\n\nThis table lists the format you can specify in your Mustache template:\n\n| Format            | Meaning                                                       |\n| ----------------- | ------------------------------------------------------------- |\n| day               | 1, 2, ...12, 13, etc.                                         |\n| dayName           | string,                                                       |\n| dayNameShort      | string,                                                       |\n| dayPeriod         | string,                                                       |\n| dayTwoDigit       | 01, 02, 03, ..., 12, 13, etc.                                 |\n| hour              | 0, 1, 2, 3, ..., 12, 13, ..., 22, 23                          |\n| hour12            | 1, 2, 3, ..., 12, 1, 2, ..., 11, 12                           |\n| hour12TwoDigit    | 01, 02, ..., 12, 01, 02, ..., 11, 12                          |\n| hourTwoDigit      | 00, 01, 02, ..., 12, 13, ..., 22, 23                          |\n| iso               | A standard ISO8601 date string e.g. 2019-01-23T15:31:21.213Z, |\n| localeString      | A string with a language sensitive representation.            |\n| minute            | 0, 1, 2, ..., 58, 59                                          |\n| minuteTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| month             | 1, 2, 3, ..., 12                                              |\n| monthName         | Internationalized month name string.                          |\n| monthNameShort    | Internationalized abbreviated month name string.,             |\n| monthTwoDigit     | 01, 02, ..., 11, 12                                           |\n| second            | 0, 1, 2, ..., 58, 59                                          |\n| secondTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| timeZoneName      | Internationalized timezone, like `Pacific Daylight Time`      |\n| timeZoneNameShort | Internationalized timezone, abbreviated, like `PST`           |\n| year              | 0, 1, 2, ..., 1999, 2000, 2001, etc.                          |\n| yearTwoDigit      | 00, 01, 02, ..., 17, 18, 19, ..., 98, 99                      |\n","readmeFilename":"README.md","gitHead":"7548b64f77fe070829e46481b6fa247b8813958a","bugs":{"url":"https://github.com/ampproject/amphtml/issues"},"_id":"@bentoproject/date-display@1.2202162256.0","_nodeVersion":"16.14.0","_npmVersion":"8.3.1","dist":{"integrity":"sha512-INpB6Ia+9RVg9KY02OMXXGPW8IKrWBeKt6zB0kG+tAXJnR35/j6FpkT80Q9rutqXCyNWSm0ey62YQgMFYsao6Q==","shasum":"4c4037b3d4fa4eaa8989abf4f3b847f57702ef9d","tarball":"https://registry.npmjs.org/@bentoproject/date-display/-/date-display-1.2202162256.0.tgz","fileCount":28,"unpackedSize":981449,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiDhWgACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmolUg/+PgY6fO0YKxGHWCnoywLJvIJZSAggmS6YE9B3B1Qpf0U63qV/\r\n2zlsJdYDm0WGX67qWhNf/N7/y0q77FlLN3vFcyOOFUjt9F9pbdKxfXiHUmmO\r\nHB74zzs6a92K3URFIGEt84rVKXfJlWl43QH2QYtBw3sCdecD7UqleRL9ccVz\r\noCGMRYIsY4sRkQdvRfFEKIUHkKYgm++2CxIofMWukFF8Wn5imLqxLbw32+zw\r\nPeUmTs7OK7pNZUz6rMIApCYL6WWLLn1fd7TZjVoSJcYMQ2Fcb/bpY1pLQ0PR\r\nGAZ+eSlVEuKPmuDrbe1RcEa1agkcyG1CAB9kd2i5+A94cqE7BhOK+O7ajn7z\r\nX807kaush0taEEgjxEvT+e8s1AiTAWGdVuoUYcjp+hjHmCMCyMGyEWYx9PTj\r\n5d+4K34pKyYruoik4KuS81kw9h+ZX+wK9iV1nSjusOAT2vLc5aOzsdyv/bMj\r\nxe8CLHC6HzLEri3HKxcSyLVdtURVt0IeG3Vw360GPYEOz1mheOt+RZhd8Ad5\r\nri48nvH1e7zPBci37pNyHw+irAYpLyDCVrto5P5r1FrRSpvpm/2wJuf8lR7J\r\norynzXqh5xyrWM9AvwfRArmSeH3GaUOvAi7zralM/sDOTCvafZQPKlg8Lpuc\r\noGzEQjhBjoVGLFjO4KhoKAo81lbojY+cX4o=\r\n=WB+v\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDNOJEtfdCAiB6NUiDWM2BuIf1iIef1MQMIiawWI1qQtAIhAJi+HMiOztpaHTIE7hO0vLIpCqwX9/MVhWNYgN8qtAwu"}]},"_npmUser":{"name":"bentoprojectbot","email":"bentobot@amp.dev"},"directories":{},"maintainers":[{"name":"bentoprojectbot","email":"bentobot@amp.dev"},{"name":"kristoferbaxter","email":"kbax@me.com"},{"name":"esth","email":"esther@amp.dev"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/date-display_1.2202162256.0_1645090208418_0.8376305319041568"},"_hasShrinkwrap":false},"1.2202180255.0":{"name":"@bentoproject/date-display","version":"1.2202180255.0","description":"Displays time data that you can render in your page.","author":{"name":"Bento Authors"},"license":"Apache-2.0","main":"./dist/web-component.js","module":"./dist/web-component.module.js","exports":{".":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./web-component":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./preact":{"import":"./dist/component-preact.module.js","require":"./dist/component-preact.js"},"./react":{"import":"./dist/component-react.module.js","require":"./dist/component-react.js"},"./web-component.css":"./dist/web-component.css"},"repository":{"type":"git","url":"git+https://github.com/ampproject/amphtml.git","directory":"extensions/amp-date-display/1.0"},"homepage":"https://github.com/ampproject/amphtml/tree/main/extensions/amp-date-display/1.0","peerDependencies":{"preact":"^10.2.1","react":"^17.0.0"},"readme":"# Bento Date Display\n\nDisplays time data that you can render in your page. By providing specific [attributes](#attributes) in the Bento Date Display tag, the Bento Date Display extension returns a list of time parameters, which you can pass to [an amp-mustache template](../../amp-mustache/amp-mustache.md) for rendering. Refer to the [list below for each returned time parameter](#returned-time-parameters).\n\n## Web Component\n\nWe don't support the web component version of `bento-date-display` since `<template>` support is still being designed. This effort can be tracked in this [issue](https://go.amp.dev/issue/36619).\n\n<!--\nAn older version of this file contains the removed section, though it's incorrect:\n\nhttps://github.com/ampproject/amphtml/blob/422d171e87571c4d125a2bf956e78e92444c10e8/extensions/amp-date-display/1.0/README.md\n-->\n\n---\n\n## Preact/React Component\n\n### Import via npm\n\n```sh\nnpm install @bentoproject/date-display\n```\n\n```javascript\nimport React from 'react';\nimport {BentoDateDisplay} from '@bentoproject/date-display/react';\nimport '@bentoproject/date-display/styles.css';\n\nfunction App() {\n  return (\n    <BentoDateDisplay\n      datetime={dateTime}\n      displayIn={displayIn}\n      locale={locale}\n      render={(date) => (\n        <div>{`ISO: ${date.iso}; locale: ${date.localeString}`}</div>\n      )}\n    />\n  );\n}\n```\n\n### Interactivity and API usage\n\nThe Bento Date Display component does not have an imperative API. However, the Bento Date Display Preact/React component does accept a `render` prop that renders the consumer's template. This `render` prop should be a function which the Bento Date Display Preact/React component can use to render its template. The `render` callback will be provided a variety of date-related parameters for consumers to interpolate in the rendered template. See the [`render` prop section](#render) for more information.\n\n### Layout and style\n\nThe Bento Date Display Preact/React component allows consumers to render their own templates. These templates may use inline styles, `<style>` tags, Preact/React components that import their own stylesheets.\n\n### Props\n\n#### `datetime`\n\nRequired prop. Denotes the date and time as a Date, String, or Nuumber. If String, must be a standard ISO 8601 date string (e.g. 2017-08-02T15:05:05.000Z) or the string `now`. If set to `now`, it will use the time the page loaded to render its template. If Number, must be a POSIX epoch value in milliseconds.\n\n#### `displayIn`\n\nOptional prop that can be either `\"utc\"` or `\"local\"` and defaults to `\"local\"`. This prop indicates what timezone to display the date in. If set to the value `\"utc\"`, the component will convert the given date to UTC.\n\n#### `locale`\n\nAn internationalization language string for each timer unit. The default value is `en` (for English). This prop supports all values that are supported by the user's browser.\n\n#### `localeOptions`\n\nThe `localeOptions` object supports all the options under [Intl.DateTimeFormat.options](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/DateTimeFormat#parameters) parameter that specifies the formatting style to use for `localeString` format.\n\nNote that if the `displayIn` prop is set to `utc`, the value of `localeOptions.timeZone` will automatically be converted to `UTC`.\n\n#### `render`\n\nOptional callback that should render a template. The callback will be provided an object with properties/values related to the date expressed in `datetime`.\n\nBy default, the Bento Date Display component will display the [`localeString` form of the Date](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/toLocaleString) for the given locale and localeOption. See the [Returned Time Parameters section](#returned-time-parameters) for more details on how each property will be displayed.\n\n```typescript\n(dateParams: DateParams) => JSXInternal.Element\ninterface DateParams {\n  day: number;\n  dayName: string;\n  dayNameShort: string;\n  dayPeriod: string;\n  dayTwoDigit: string;\n  hour: number;\n  hour12: number;\n  hour12TwoDigit: string;\n  hourTwoDigit: string;\n  iso: string;\n  localeString: string;\n  minute: number;\n  minuteTwoDigit: string;\n  month: number;\n  monthName: string;\n  monthNameShort: string;\n  monthTwoDigit: string;\n  second: number;\n  secondTwoDigit: string;\n  timeZoneName: string;\n  timeZoneNameShort: string;\n  year: number;\n  yearTwoDi: string;\n}\n```\n\n### Returned Time Parameters\n\nThis table lists the format you can specify in your Mustache template:\n\n| Format            | Meaning                                                       |\n| ----------------- | ------------------------------------------------------------- |\n| day               | 1, 2, ...12, 13, etc.                                         |\n| dayName           | string,                                                       |\n| dayNameShort      | string,                                                       |\n| dayPeriod         | string,                                                       |\n| dayTwoDigit       | 01, 02, 03, ..., 12, 13, etc.                                 |\n| hour              | 0, 1, 2, 3, ..., 12, 13, ..., 22, 23                          |\n| hour12            | 1, 2, 3, ..., 12, 1, 2, ..., 11, 12                           |\n| hour12TwoDigit    | 01, 02, ..., 12, 01, 02, ..., 11, 12                          |\n| hourTwoDigit      | 00, 01, 02, ..., 12, 13, ..., 22, 23                          |\n| iso               | A standard ISO8601 date string e.g. 2019-01-23T15:31:21.213Z, |\n| localeString      | A string with a language sensitive representation.            |\n| minute            | 0, 1, 2, ..., 58, 59                                          |\n| minuteTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| month             | 1, 2, 3, ..., 12                                              |\n| monthName         | Internationalized month name string.                          |\n| monthNameShort    | Internationalized abbreviated month name string.,             |\n| monthTwoDigit     | 01, 02, ..., 11, 12                                           |\n| second            | 0, 1, 2, ..., 58, 59                                          |\n| secondTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| timeZoneName      | Internationalized timezone, like `Pacific Daylight Time`      |\n| timeZoneNameShort | Internationalized timezone, abbreviated, like `PST`           |\n| year              | 0, 1, 2, ..., 1999, 2000, 2001, etc.                          |\n| yearTwoDigit      | 00, 01, 02, ..., 17, 18, 19, ..., 98, 99                      |\n","readmeFilename":"README.md","gitHead":"8708c2591965df37c54fa25ae829421f10de58aa","bugs":{"url":"https://github.com/ampproject/amphtml/issues"},"_id":"@bentoproject/date-display@1.2202180255.0","_nodeVersion":"16.14.0","_npmVersion":"8.3.1","dist":{"integrity":"sha512-xHS7FvoaKxjZjEy743qtBtx5tk5N8lO+bg8A35aCKgawA7ziUVvNiLKHvr/TEycz+ELIgWmmStzBoRf2pm4PDw==","shasum":"38c40a12959ec767b27057e9dc117a9ae9019340","tarball":"https://registry.npmjs.org/@bentoproject/date-display/-/date-display-1.2202180255.0.tgz","fileCount":28,"unpackedSize":1938015,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiD2qXACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmphsRAAm97OWJjlzPUOoGEAYoL4JmQoepOuAtiE+KkV3nnilAIwqZTd\r\nhrkAekcVSoLf3zmq2lWdJFwy3DNhfiYQ8VUFg/1QyK21ia5YUICXHBy3CLAX\r\ncYLZlfA4qShcVQOVu4rNvt/iemnBKjAB4yw2oH+ARGBeKsv0kznNqS1sZvvY\r\nMeow4fn6zDowgwAJKP8sYdW1LDKQ3L5/DzwHpc8Cjk4PRr/9fxUgqMqhT9jl\r\ndeSQWD7sn8cbGrkLt7SdyPD+TouoplQI91W7pAgx0n8HmQIxlmZrBupuw5fc\r\nDO/Sk4QAri73BAjItR5B5gBT8QYwzzmEIBEWDRG4gP94N4ghObeeKXzjilzL\r\n/vZXKISb6wtu7JTig0HqZeoBGZxKTGB6bIogH7yM37A2pJqXsQLa4kCo/jV1\r\nixevxHcUChekoydLAVZgwPQk7CxHx88VWicV6fJnqvAQyciIRYhPQZGhMa+9\r\n6A4cNNYw2JXLPihQ6+y4T8hpQ3nknfWn0D1s6zbh9T2xPx35HHIvqLPvpKwl\r\noX5gQMg07dPipxqi4+DMrumx7B2RMoG8mM8+dudkVQhUDDXMPytyu/GHASWT\r\nuT2bONH10R8lrnrmXrOqgsFW4APg3k3sxR/og9Qj3GWE3fBjXZA7QCG/ICCW\r\ndk1D8KMb4OhDlTl3LmYnAGcmZHrKspx4frQ=\r\n=t8x1\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIDOJuI3BS2YpY9JuH0FDKWlI9PLmD6XnoaspKzD5Vr4DAiEAzSQD7T387WZJoB5K/y0jJOhV2q/vqecmV4M0seQLBuE="}]},"_npmUser":{"name":"bentoprojectbot","email":"bentobot@amp.dev"},"directories":{},"maintainers":[{"name":"bentoprojectbot","email":"bentobot@amp.dev"},{"name":"kristoferbaxter","email":"kbax@me.com"},{"name":"esth","email":"esther@amp.dev"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/date-display_1.2202180255.0_1645177495273_0.5000712587971847"},"_hasShrinkwrap":false},"1.2202230359.0":{"name":"@bentoproject/date-display","version":"1.2202230359.0","description":"Displays time data that you can render in your page.","author":{"name":"Bento Authors"},"license":"Apache-2.0","main":"./dist/web-component.js","module":"./dist/web-component.module.js","exports":{".":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./web-component":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./preact":{"import":"./dist/component-preact.module.js","require":"./dist/component-preact.js"},"./react":{"import":"./dist/component-react.module.js","require":"./dist/component-react.js"},"./web-component.css":"./dist/web-component.css"},"repository":{"type":"git","url":"git+https://github.com/ampproject/amphtml.git","directory":"extensions/amp-date-display/1.0"},"homepage":"https://github.com/ampproject/amphtml/tree/main/extensions/amp-date-display/1.0","peerDependencies":{"preact":"^10.2.1","react":"^17.0.0"},"readme":"# Bento Date Display\n\nDisplays time data that you can render in your page. By providing specific [attributes](#attributes) in the Bento Date Display tag, the Bento Date Display extension returns a list of time parameters, which you can pass to [an amp-mustache template](../../amp-mustache/amp-mustache.md) for rendering. Refer to the [list below for each returned time parameter](#returned-time-parameters).\n\n## Web Component\n\nWe don't support the web component version of `bento-date-display` since `<template>` support is still being designed. This effort can be tracked in this [issue](https://go.amp.dev/issue/36619).\n\n<!--\nAn older version of this file contains the removed section, though it's incorrect:\n\nhttps://github.com/ampproject/amphtml/blob/422d171e87571c4d125a2bf956e78e92444c10e8/extensions/amp-date-display/1.0/README.md\n-->\n\n---\n\n## Preact/React Component\n\n### Import via npm\n\n```sh\nnpm install @bentoproject/date-display\n```\n\n```javascript\nimport React from 'react';\nimport {BentoDateDisplay} from '@bentoproject/date-display/react';\nimport '@bentoproject/date-display/styles.css';\n\nfunction App() {\n  return (\n    <BentoDateDisplay\n      datetime={dateTime}\n      displayIn={displayIn}\n      locale={locale}\n      render={(date) => (\n        <div>{`ISO: ${date.iso}; locale: ${date.localeString}`}</div>\n      )}\n    />\n  );\n}\n```\n\n### Interactivity and API usage\n\nThe Bento Date Display component does not have an imperative API. However, the Bento Date Display Preact/React component does accept a `render` prop that renders the consumer's template. This `render` prop should be a function which the Bento Date Display Preact/React component can use to render its template. The `render` callback will be provided a variety of date-related parameters for consumers to interpolate in the rendered template. See the [`render` prop section](#render) for more information.\n\n### Layout and style\n\nThe Bento Date Display Preact/React component allows consumers to render their own templates. These templates may use inline styles, `<style>` tags, Preact/React components that import their own stylesheets.\n\n### Props\n\n#### `datetime`\n\nRequired prop. Denotes the date and time as a Date, String, or Nuumber. If String, must be a standard ISO 8601 date string (e.g. 2017-08-02T15:05:05.000Z) or the string `now`. If set to `now`, it will use the time the page loaded to render its template. If Number, must be a POSIX epoch value in milliseconds.\n\n#### `displayIn`\n\nOptional prop that can be either `\"utc\"` or `\"local\"` and defaults to `\"local\"`. This prop indicates what timezone to display the date in. If set to the value `\"utc\"`, the component will convert the given date to UTC.\n\n#### `locale`\n\nAn internationalization language string for each timer unit. The default value is `en` (for English). This prop supports all values that are supported by the user's browser.\n\n#### `localeOptions`\n\nThe `localeOptions` object supports all the options under [Intl.DateTimeFormat.options](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/DateTimeFormat#parameters) parameter that specifies the formatting style to use for `localeString` format.\n\nNote that if the `displayIn` prop is set to `utc`, the value of `localeOptions.timeZone` will automatically be converted to `UTC`.\n\n#### `render`\n\nOptional callback that should render a template. The callback will be provided an object with properties/values related to the date expressed in `datetime`.\n\nBy default, the Bento Date Display component will display the [`localeString` form of the Date](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/toLocaleString) for the given locale and localeOption. See the [Returned Time Parameters section](#returned-time-parameters) for more details on how each property will be displayed.\n\n```typescript\n(dateParams: DateParams) => JSXInternal.Element\ninterface DateParams {\n  day: number;\n  dayName: string;\n  dayNameShort: string;\n  dayPeriod: string;\n  dayTwoDigit: string;\n  hour: number;\n  hour12: number;\n  hour12TwoDigit: string;\n  hourTwoDigit: string;\n  iso: string;\n  localeString: string;\n  minute: number;\n  minuteTwoDigit: string;\n  month: number;\n  monthName: string;\n  monthNameShort: string;\n  monthTwoDigit: string;\n  second: number;\n  secondTwoDigit: string;\n  timeZoneName: string;\n  timeZoneNameShort: string;\n  year: number;\n  yearTwoDi: string;\n}\n```\n\n### Returned Time Parameters\n\nThis table lists the format you can specify in your Mustache template:\n\n| Format            | Meaning                                                       |\n| ----------------- | ------------------------------------------------------------- |\n| day               | 1, 2, ...12, 13, etc.                                         |\n| dayName           | string,                                                       |\n| dayNameShort      | string,                                                       |\n| dayPeriod         | string,                                                       |\n| dayTwoDigit       | 01, 02, 03, ..., 12, 13, etc.                                 |\n| hour              | 0, 1, 2, 3, ..., 12, 13, ..., 22, 23                          |\n| hour12            | 1, 2, 3, ..., 12, 1, 2, ..., 11, 12                           |\n| hour12TwoDigit    | 01, 02, ..., 12, 01, 02, ..., 11, 12                          |\n| hourTwoDigit      | 00, 01, 02, ..., 12, 13, ..., 22, 23                          |\n| iso               | A standard ISO8601 date string e.g. 2019-01-23T15:31:21.213Z, |\n| localeString      | A string with a language sensitive representation.            |\n| minute            | 0, 1, 2, ..., 58, 59                                          |\n| minuteTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| month             | 1, 2, 3, ..., 12                                              |\n| monthName         | Internationalized month name string.                          |\n| monthNameShort    | Internationalized abbreviated month name string.,             |\n| monthTwoDigit     | 01, 02, ..., 11, 12                                           |\n| second            | 0, 1, 2, ..., 58, 59                                          |\n| secondTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| timeZoneName      | Internationalized timezone, like `Pacific Daylight Time`      |\n| timeZoneNameShort | Internationalized timezone, abbreviated, like `PST`           |\n| year              | 0, 1, 2, ..., 1999, 2000, 2001, etc.                          |\n| yearTwoDigit      | 00, 01, 02, ..., 17, 18, 19, ..., 98, 99                      |\n","readmeFilename":"README.md","gitHead":"02e5f5f51d0375b35a2a20b27815ab79d9767e51","bugs":{"url":"https://github.com/ampproject/amphtml/issues"},"_id":"@bentoproject/date-display@1.2202230359.0","_nodeVersion":"16.14.0","_npmVersion":"8.3.1","dist":{"integrity":"sha512-VEuJaokfRecw4lDhQnSRSPmM7zlP8pjDWPS0//g+1vuYFJmqowpGrOT0EWjJ3s35LDeWv/5y0//kVGJl8Baegg==","shasum":"4247e1a04edc1d406eb9091f8343dc4e93e03931","tarball":"https://registry.npmjs.org/@bentoproject/date-display/-/date-display-1.2202230359.0.tgz","fileCount":28,"unpackedSize":1938545,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiFf6XACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqkxxAAh6gtPpnPMHwx8mvSPI//A+kloj+6L5jVJNVsrp63VSoDS8RA\r\n46ws9SJkYmqvdwOagQKy7IPM+cx2LsNLl28zq6GgTAo9bg8/kSY+d94EIKCE\r\ngwaBP20NrShJKYxrSRF2pVu9j5sLvWZE6Z4dTjyOZMbS6j6v2eFTSGwMdRQ3\r\nit+CIydmMsiJBnUvJReKYQH+Vry/K1mDjJ8bCxKJy0C9mSLlvahJKPmBW1QH\r\nwEKmpEVHwtwnaUakS+k2cZARcylPu4zmR+SwBHzOhPhdG+R6wVxq+8i8KpBb\r\n4BBiN0bwaTwRmM2jNme7SwIJqtbfRTc0MpKcdJieqw4dB6yLWVE6qsV1yy+5\r\nvdqXDde2NhBxfsA3LzQ/sB7LAbdWhMyYSWAXuIjsltL3X7VJsl2Nig4fypV+\r\n1f0hkULn2f8J1A0kjtkDLTBEahMl4/kpHcTDL1xz6pbzHuYJ9Hbgs/OJqg24\r\n8R93hvv0OfWagFKi4Hn/GzOwGVPdxuGbX/R+0qLYmTNwVALoo0TCaQ+D4FXN\r\nNuVaLoc9JYBhUPqI45LBnOMxYbYA8hxjjeog0laCWf3UFh6MfmaCRX1I6LFs\r\n1LlKZmbbH8AmWwPQnHlXvYN7FyRkN+LFTzgHK6VpM3iPOJ/STTuUNftzE3Sn\r\nHNkOMIIN6OnF9omjGsKt6vTW+WLsocFqdSc=\r\n=F8wJ\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDNOEY4szGC5aymSnKaHICtq5+Z+ty4t1ObXkkihFxIEwIhAJO7rRqNhJZsvLSqsL0UR3wXvrjISwD34inq6nOG7u5H"}]},"_npmUser":{"name":"bentoprojectbot","email":"bentobot@amp.dev"},"directories":{},"maintainers":[{"name":"bentoprojectbot","email":"bentobot@amp.dev"},{"name":"kristoferbaxter","email":"kbax@me.com"},{"name":"esth","email":"esther@amp.dev"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/date-display_1.2202230359.0_1645608599185_0.389381728894729"},"_hasShrinkwrap":false},"1.2202232232.0":{"name":"@bentoproject/date-display","version":"1.2202232232.0","description":"Displays time data that you can render in your page.","author":{"name":"Bento Authors"},"license":"Apache-2.0","main":"./dist/web-component.js","module":"./dist/web-component.module.js","exports":{".":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./web-component":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./preact":{"import":"./dist/component-preact.module.js","require":"./dist/component-preact.js"},"./react":{"import":"./dist/component-react.module.js","require":"./dist/component-react.js"},"./web-component.css":"./dist/web-component.css"},"repository":{"type":"git","url":"git+https://github.com/ampproject/amphtml.git","directory":"extensions/amp-date-display/1.0"},"homepage":"https://github.com/ampproject/amphtml/tree/main/extensions/amp-date-display/1.0","peerDependencies":{"preact":"^10.2.1","react":"^17.0.0"},"readme":"# Bento Date Display\n\nDisplays time data that you can render in your page. By providing specific [attributes](#attributes) in the Bento Date Display tag, the Bento Date Display extension returns a list of time parameters, which you can pass to [an amp-mustache template](../../amp-mustache/amp-mustache.md) for rendering. Refer to the [list below for each returned time parameter](#returned-time-parameters).\n\n## Web Component\n\nWe don't support the web component version of `bento-date-display` since `<template>` support is still being designed. This effort can be tracked in this [issue](https://go.amp.dev/issue/36619).\n\n<!--\nAn older version of this file contains the removed section, though it's incorrect:\n\nhttps://github.com/ampproject/amphtml/blob/422d171e87571c4d125a2bf956e78e92444c10e8/extensions/amp-date-display/1.0/README.md\n-->\n\n---\n\n## Preact/React Component\n\n### Import via npm\n\n```sh\nnpm install @bentoproject/date-display\n```\n\n```javascript\nimport React from 'react';\nimport {BentoDateDisplay} from '@bentoproject/date-display/react';\nimport '@bentoproject/date-display/styles.css';\n\nfunction App() {\n  return (\n    <BentoDateDisplay\n      datetime={dateTime}\n      displayIn={displayIn}\n      locale={locale}\n      render={(date) => (\n        <div>{`ISO: ${date.iso}; locale: ${date.localeString}`}</div>\n      )}\n    />\n  );\n}\n```\n\n### Interactivity and API usage\n\nThe Bento Date Display component does not have an imperative API. However, the Bento Date Display Preact/React component does accept a `render` prop that renders the consumer's template. This `render` prop should be a function which the Bento Date Display Preact/React component can use to render its template. The `render` callback will be provided a variety of date-related parameters for consumers to interpolate in the rendered template. See the [`render` prop section](#render) for more information.\n\n### Layout and style\n\nThe Bento Date Display Preact/React component allows consumers to render their own templates. These templates may use inline styles, `<style>` tags, Preact/React components that import their own stylesheets.\n\n### Props\n\n#### `datetime`\n\nRequired prop. Denotes the date and time as a Date, String, or Nuumber. If String, must be a standard ISO 8601 date string (e.g. 2017-08-02T15:05:05.000Z) or the string `now`. If set to `now`, it will use the time the page loaded to render its template. If Number, must be a POSIX epoch value in milliseconds.\n\n#### `displayIn`\n\nOptional prop that can be either `\"utc\"` or `\"local\"` and defaults to `\"local\"`. This prop indicates what timezone to display the date in. If set to the value `\"utc\"`, the component will convert the given date to UTC.\n\n#### `locale`\n\nAn internationalization language string for each timer unit. The default value is `en` (for English). This prop supports all values that are supported by the user's browser.\n\n#### `localeOptions`\n\nThe `localeOptions` object supports all the options under [Intl.DateTimeFormat.options](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/DateTimeFormat#parameters) parameter that specifies the formatting style to use for `localeString` format.\n\nNote that if the `displayIn` prop is set to `utc`, the value of `localeOptions.timeZone` will automatically be converted to `UTC`.\n\n#### `render`\n\nOptional callback that should render a template. The callback will be provided an object with properties/values related to the date expressed in `datetime`.\n\nBy default, the Bento Date Display component will display the [`localeString` form of the Date](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/toLocaleString) for the given locale and localeOption. See the [Returned Time Parameters section](#returned-time-parameters) for more details on how each property will be displayed.\n\n```typescript\n(dateParams: DateParams) => JSXInternal.Element\ninterface DateParams {\n  day: number;\n  dayName: string;\n  dayNameShort: string;\n  dayPeriod: string;\n  dayTwoDigit: string;\n  hour: number;\n  hour12: number;\n  hour12TwoDigit: string;\n  hourTwoDigit: string;\n  iso: string;\n  localeString: string;\n  minute: number;\n  minuteTwoDigit: string;\n  month: number;\n  monthName: string;\n  monthNameShort: string;\n  monthTwoDigit: string;\n  second: number;\n  secondTwoDigit: string;\n  timeZoneName: string;\n  timeZoneNameShort: string;\n  year: number;\n  yearTwoDi: string;\n}\n```\n\n### Returned Time Parameters\n\nThis table lists the format you can specify in your Mustache template:\n\n| Format            | Meaning                                                       |\n| ----------------- | ------------------------------------------------------------- |\n| day               | 1, 2, ...12, 13, etc.                                         |\n| dayName           | string,                                                       |\n| dayNameShort      | string,                                                       |\n| dayPeriod         | string,                                                       |\n| dayTwoDigit       | 01, 02, 03, ..., 12, 13, etc.                                 |\n| hour              | 0, 1, 2, 3, ..., 12, 13, ..., 22, 23                          |\n| hour12            | 1, 2, 3, ..., 12, 1, 2, ..., 11, 12                           |\n| hour12TwoDigit    | 01, 02, ..., 12, 01, 02, ..., 11, 12                          |\n| hourTwoDigit      | 00, 01, 02, ..., 12, 13, ..., 22, 23                          |\n| iso               | A standard ISO8601 date string e.g. 2019-01-23T15:31:21.213Z, |\n| localeString      | A string with a language sensitive representation.            |\n| minute            | 0, 1, 2, ..., 58, 59                                          |\n| minuteTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| month             | 1, 2, 3, ..., 12                                              |\n| monthName         | Internationalized month name string.                          |\n| monthNameShort    | Internationalized abbreviated month name string.,             |\n| monthTwoDigit     | 01, 02, ..., 11, 12                                           |\n| second            | 0, 1, 2, ..., 58, 59                                          |\n| secondTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| timeZoneName      | Internationalized timezone, like `Pacific Daylight Time`      |\n| timeZoneNameShort | Internationalized timezone, abbreviated, like `PST`           |\n| year              | 0, 1, 2, ..., 1999, 2000, 2001, etc.                          |\n| yearTwoDigit      | 00, 01, 02, ..., 17, 18, 19, ..., 98, 99                      |\n","readmeFilename":"README.md","gitHead":"66c8923bb334f4cf267bf8feebf822629a9129ac","bugs":{"url":"https://github.com/ampproject/amphtml/issues"},"_id":"@bentoproject/date-display@1.2202232232.0","_nodeVersion":"16.14.0","_npmVersion":"8.3.1","dist":{"integrity":"sha512-HagZ9EgoG4hrlfeXAXwdrZJVTN4HDEcBjjEZv8GepEFGTO8I3NrWdXpGcotTv97zi2tQBMeMLuzdGhi/6G60ag==","shasum":"1caead9950d8c23cc82ff253b1a2e4e6c4bd3f53","tarball":"https://registry.npmjs.org/@bentoproject/date-display/-/date-display-1.2202232232.0.tgz","fileCount":28,"unpackedSize":1938753,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiF6KxACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpmgxAAhU1AuYbrlOMHndSR+dfj+wEkKbUfa6t+1VdLKHCwu8Y+IoIV\r\nbMp7iH5IV4Wvmb3HrKlUwwBUh467dJLya5wTAorM68u6ByycJ7ccqBik5eh7\r\nlh8W8HY392WMQiPOivk7lSq9WIyTlAkur272cKsHhCHCFvCe6Cq54tOcHt3O\r\n9d5wTsEkHEiNi971Vw3MPfcAzwxjngwN4BsBvOkQJW2tQsp1tmawCklLn8Xi\r\nSqOXu+XlnHl+OSJIGGkYsJjwfjwaGVe+Cm3h/4daoOIqHns3UOsYiYdMe7dg\r\n5GuckZP82m1zeCzoLqLCAMQ2aX4iKD84jKXgEQ0Vp4X9zg2ADpR/7V2xwUZU\r\n4WDwX1Uf1WcvCvxQB4QrhwPHZD62VbLxrujrCBb7695HwGPifY2JxNzfPMgH\r\nmzosmqMra323aP4O2ErgP+jFs0oduPAGYe6yj0i00e7cb2Z52w+1xpsfcV+4\r\nlHRMhXCsclkpHZxEtAxEUl5iYfar9s0nx7Xi0ILF1cI/8xPgFlDNg0pu3ev3\r\nRvn7vNVZoEp6GMgvrsljQHKloqgohoA6QyPUXyMFUbVGEHCDz3LgObi5fVLJ\r\nPAosyG8YWUiwcoSL2hvo758II4mBEW9qNpKQ+dwHUV4esadVLusu9Ukbfz2V\r\n7TybLlu8L3n8VL0N/ubc4nc8IzJ9X8EH6Rg=\r\n=OOo/\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCW4i3bReS6E2u18Hg2iQGNpmFMhKfO6l3Fw09tL1mBagIhAIhTX7ihYdY4QCC523pjlxfZmLIXsdexOpqmVYDdizDi"}]},"_npmUser":{"name":"bentoprojectbot","email":"bentobot@amp.dev"},"directories":{},"maintainers":[{"name":"bentoprojectbot","email":"bentobot@amp.dev"},{"name":"kristoferbaxter","email":"kbax@me.com"},{"name":"esth","email":"esther@amp.dev"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/date-display_1.2202232232.0_1645716145155_0.2935204560062106"},"_hasShrinkwrap":false},"1.2202241911.0":{"name":"@bentoproject/date-display","version":"1.2202241911.0","description":"Displays time data that you can render in your page.","author":{"name":"Bento Authors"},"license":"Apache-2.0","main":"./dist/web-component.js","module":"./dist/web-component.module.js","exports":{".":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./web-component":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./preact":{"import":"./dist/component-preact.module.js","require":"./dist/component-preact.js"},"./react":{"import":"./dist/component-react.module.js","require":"./dist/component-react.js"},"./web-component.css":"./dist/web-component.css"},"repository":{"type":"git","url":"git+https://github.com/ampproject/amphtml.git","directory":"extensions/amp-date-display/1.0"},"homepage":"https://github.com/ampproject/amphtml/tree/main/extensions/amp-date-display/1.0","peerDependencies":{"preact":"^10.2.1","react":"^17.0.0"},"readme":"# Bento Date Display\n\nDisplays time data that you can render in your page. By providing specific [attributes](#attributes) in the Bento Date Display tag, the Bento Date Display extension returns a list of time parameters, which you can pass to [an amp-mustache template](../../amp-mustache/amp-mustache.md) for rendering. Refer to the [list below for each returned time parameter](#returned-time-parameters).\n\n## Web Component\n\nWe don't support the web component version of `bento-date-display` since `<template>` support is still being designed. This effort can be tracked in this [issue](https://go.amp.dev/issue/36619).\n\n<!--\nAn older version of this file contains the removed section, though it's incorrect:\n\nhttps://github.com/ampproject/amphtml/blob/422d171e87571c4d125a2bf956e78e92444c10e8/extensions/amp-date-display/1.0/README.md\n-->\n\n---\n\n## Preact/React Component\n\n### Import via npm\n\n```sh\nnpm install @bentoproject/date-display\n```\n\n```javascript\nimport React from 'react';\nimport {BentoDateDisplay} from '@bentoproject/date-display/react';\nimport '@bentoproject/date-display/styles.css';\n\nfunction App() {\n  return (\n    <BentoDateDisplay\n      datetime={dateTime}\n      displayIn={displayIn}\n      locale={locale}\n      render={(date) => (\n        <div>{`ISO: ${date.iso}; locale: ${date.localeString}`}</div>\n      )}\n    />\n  );\n}\n```\n\n### Interactivity and API usage\n\nThe Bento Date Display component does not have an imperative API. However, the Bento Date Display Preact/React component does accept a `render` prop that renders the consumer's template. This `render` prop should be a function which the Bento Date Display Preact/React component can use to render its template. The `render` callback will be provided a variety of date-related parameters for consumers to interpolate in the rendered template. See the [`render` prop section](#render) for more information.\n\n### Layout and style\n\nThe Bento Date Display Preact/React component allows consumers to render their own templates. These templates may use inline styles, `<style>` tags, Preact/React components that import their own stylesheets.\n\n### Props\n\n#### `datetime`\n\nRequired prop. Denotes the date and time as a Date, String, or Nuumber. If String, must be a standard ISO 8601 date string (e.g. 2017-08-02T15:05:05.000Z) or the string `now`. If set to `now`, it will use the time the page loaded to render its template. If Number, must be a POSIX epoch value in milliseconds.\n\n#### `displayIn`\n\nOptional prop that can be either `\"utc\"` or `\"local\"` and defaults to `\"local\"`. This prop indicates what timezone to display the date in. If set to the value `\"utc\"`, the component will convert the given date to UTC.\n\n#### `locale`\n\nAn internationalization language string for each timer unit. The default value is `en` (for English). This prop supports all values that are supported by the user's browser.\n\n#### `localeOptions`\n\nThe `localeOptions` object supports all the options under [Intl.DateTimeFormat.options](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/DateTimeFormat#parameters) parameter that specifies the formatting style to use for `localeString` format.\n\nNote that if the `displayIn` prop is set to `utc`, the value of `localeOptions.timeZone` will automatically be converted to `UTC`.\n\n#### `render`\n\nOptional callback that should render a template. The callback will be provided an object with properties/values related to the date expressed in `datetime`.\n\nBy default, the Bento Date Display component will display the [`localeString` form of the Date](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/toLocaleString) for the given locale and localeOption. See the [Returned Time Parameters section](#returned-time-parameters) for more details on how each property will be displayed.\n\n```typescript\n(dateParams: DateParams) => JSXInternal.Element\ninterface DateParams {\n  day: number;\n  dayName: string;\n  dayNameShort: string;\n  dayPeriod: string;\n  dayTwoDigit: string;\n  hour: number;\n  hour12: number;\n  hour12TwoDigit: string;\n  hourTwoDigit: string;\n  iso: string;\n  localeString: string;\n  minute: number;\n  minuteTwoDigit: string;\n  month: number;\n  monthName: string;\n  monthNameShort: string;\n  monthTwoDigit: string;\n  second: number;\n  secondTwoDigit: string;\n  timeZoneName: string;\n  timeZoneNameShort: string;\n  year: number;\n  yearTwoDi: string;\n}\n```\n\n### Returned Time Parameters\n\nThis table lists the format you can specify in your Mustache template:\n\n| Format            | Meaning                                                       |\n| ----------------- | ------------------------------------------------------------- |\n| day               | 1, 2, ...12, 13, etc.                                         |\n| dayName           | string,                                                       |\n| dayNameShort      | string,                                                       |\n| dayPeriod         | string,                                                       |\n| dayTwoDigit       | 01, 02, 03, ..., 12, 13, etc.                                 |\n| hour              | 0, 1, 2, 3, ..., 12, 13, ..., 22, 23                          |\n| hour12            | 1, 2, 3, ..., 12, 1, 2, ..., 11, 12                           |\n| hour12TwoDigit    | 01, 02, ..., 12, 01, 02, ..., 11, 12                          |\n| hourTwoDigit      | 00, 01, 02, ..., 12, 13, ..., 22, 23                          |\n| iso               | A standard ISO8601 date string e.g. 2019-01-23T15:31:21.213Z, |\n| localeString      | A string with a language sensitive representation.            |\n| minute            | 0, 1, 2, ..., 58, 59                                          |\n| minuteTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| month             | 1, 2, 3, ..., 12                                              |\n| monthName         | Internationalized month name string.                          |\n| monthNameShort    | Internationalized abbreviated month name string.,             |\n| monthTwoDigit     | 01, 02, ..., 11, 12                                           |\n| second            | 0, 1, 2, ..., 58, 59                                          |\n| secondTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| timeZoneName      | Internationalized timezone, like `Pacific Daylight Time`      |\n| timeZoneNameShort | Internationalized timezone, abbreviated, like `PST`           |\n| year              | 0, 1, 2, ..., 1999, 2000, 2001, etc.                          |\n| yearTwoDigit      | 00, 01, 02, ..., 17, 18, 19, ..., 98, 99                      |\n","readmeFilename":"README.md","gitHead":"d0f22f13b53d3b67847e18749e07ae4640258f87","bugs":{"url":"https://github.com/ampproject/amphtml/issues"},"_id":"@bentoproject/date-display@1.2202241911.0","_nodeVersion":"16.14.0","_npmVersion":"8.3.1","dist":{"integrity":"sha512-kvA/YMCFS74S174aCuyBTRxgPn30e4CcYgEswi0W/b5pohiipVXX5PODpJnX5uFq2gRYHXtYJpwjpdkKKv7A2A==","shasum":"52ebdbcc9ee8534c97b6f8327bd3f27edf8a7f97","tarball":"https://registry.npmjs.org/@bentoproject/date-display/-/date-display-1.2202241911.0.tgz","fileCount":28,"unpackedSize":1938753,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiGPMeACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpHDxAAnIiDFte0vPsMje6xvN97rNLKFtz4WUHawao7T+6p5qUDfFRW\r\nniidemEnTwMQmf/ckIBCXilqwHBheir2qSd2J2R4XovU7cpMU9F8jN14sNp9\r\n5PBPXm5oSWK5EyWqpo4BxAHvew+gQaaQZfvTK9Tk/EG43wqcPeWDrPQXjq+O\r\nozpJm/9FAOhVuHCSdZrkEJqakRFwDevNOdzdZYeA4SqTpXXBVEw0hAtYQRhp\r\nwDGcVCoGRb6XW6TLoCmfDpP1OT2DHqBJcDsVyWzQ1aXUlyRD4jq1Crzmnkt+\r\nDvxPDewEEZCc3eAwa3DljRiZ97iVDVnttRg3bGcglj+mZLoLZig2CxAA7BFz\r\nMwoBLSqwQ1Gaoai9U/OWO63xah/n4NOU/vrjjunvANfnc4iyi5K8/MeSzocH\r\nX7b3NLfAUHD7xJXiBpikql6fm44w0EiJx8S87+yNMCVM9m2wiaDKXjMey/Kx\r\nERuD2sqAlceZejnK7ZNlKePM85mo7GHOHqfJbu4lRtWddSpFyj5cmaufYpdg\r\nSqHOuPt+LcrLRn3uPbGeT/YLENHybn/uIRwt3+ppzG+P/Tpp1kPdKYalBy2m\r\njN6EZGPP6Q2CGmYlsTpAGrMXCnuNbsTwqCBNrLYf1F6uPp7PJpi9A3kPOYSG\r\nEFFijwWfuMnJaDEDgR0zdQG1uZfB7t+E0VQ=\r\n=iBax\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQD5syjpoA7UVWiUtbpZbwGcQTuTcfUgi1KIvOgMoC2h9wIhAPkgHFHcs2foElqfahSWTec10+rP9djCtVcqpdGT7AFl"}]},"_npmUser":{"name":"bentoprojectbot","email":"bentobot@amp.dev"},"directories":{},"maintainers":[{"name":"bentoprojectbot","email":"bentobot@amp.dev"},{"name":"kristoferbaxter","email":"kbax@me.com"},{"name":"esth","email":"esther@amp.dev"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/date-display_1.2202241911.0_1645802270162_0.41056957680956896"},"_hasShrinkwrap":false},"1.2202252101.0":{"name":"@bentoproject/date-display","version":"1.2202252101.0","description":"Displays time data that you can render in your page.","author":{"name":"Bento Authors"},"license":"Apache-2.0","main":"./dist/web-component.js","module":"./dist/web-component.module.js","exports":{".":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./web-component":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./preact":{"import":"./dist/component-preact.module.js","require":"./dist/component-preact.js"},"./react":{"import":"./dist/component-react.module.js","require":"./dist/component-react.js"},"./web-component.css":"./dist/web-component.css"},"repository":{"type":"git","url":"git+https://github.com/ampproject/amphtml.git","directory":"extensions/amp-date-display/1.0"},"homepage":"https://github.com/ampproject/amphtml/tree/main/extensions/amp-date-display/1.0","peerDependencies":{"preact":"^10.2.1","react":"^17.0.0"},"readme":"# Bento Date Display\n\nDisplays time data that you can render in your page. By providing specific [attributes](#attributes) in the Bento Date Display tag, the Bento Date Display extension returns a list of time parameters, which you can pass to [an amp-mustache template](../../amp-mustache/amp-mustache.md) for rendering. Refer to the [list below for each returned time parameter](#returned-time-parameters).\n\n## Web Component\n\nWe don't support the web component version of `bento-date-display` since `<template>` support is still being designed. This effort can be tracked in this [issue](https://go.amp.dev/issue/36619).\n\n<!--\nAn older version of this file contains the removed section, though it's incorrect:\n\nhttps://github.com/ampproject/amphtml/blob/422d171e87571c4d125a2bf956e78e92444c10e8/extensions/amp-date-display/1.0/README.md\n-->\n\n---\n\n## Preact/React Component\n\n### Import via npm\n\n```sh\nnpm install @bentoproject/date-display\n```\n\n```javascript\nimport React from 'react';\nimport {BentoDateDisplay} from '@bentoproject/date-display/react';\nimport '@bentoproject/date-display/styles.css';\n\nfunction App() {\n  return (\n    <BentoDateDisplay\n      datetime={dateTime}\n      displayIn={displayIn}\n      locale={locale}\n      render={(date) => (\n        <div>{`ISO: ${date.iso}; locale: ${date.localeString}`}</div>\n      )}\n    />\n  );\n}\n```\n\n### Interactivity and API usage\n\nThe Bento Date Display component does not have an imperative API. However, the Bento Date Display Preact/React component does accept a `render` prop that renders the consumer's template. This `render` prop should be a function which the Bento Date Display Preact/React component can use to render its template. The `render` callback will be provided a variety of date-related parameters for consumers to interpolate in the rendered template. See the [`render` prop section](#render) for more information.\n\n### Layout and style\n\nThe Bento Date Display Preact/React component allows consumers to render their own templates. These templates may use inline styles, `<style>` tags, Preact/React components that import their own stylesheets.\n\n### Props\n\n#### `datetime`\n\nRequired prop. Denotes the date and time as a Date, String, or Nuumber. If String, must be a standard ISO 8601 date string (e.g. 2017-08-02T15:05:05.000Z) or the string `now`. If set to `now`, it will use the time the page loaded to render its template. If Number, must be a POSIX epoch value in milliseconds.\n\n#### `displayIn`\n\nOptional prop that can be either `\"utc\"` or `\"local\"` and defaults to `\"local\"`. This prop indicates what timezone to display the date in. If set to the value `\"utc\"`, the component will convert the given date to UTC.\n\n#### `locale`\n\nAn internationalization language string for each timer unit. The default value is `en` (for English). This prop supports all values that are supported by the user's browser.\n\n#### `localeOptions`\n\nThe `localeOptions` object supports all the options under [Intl.DateTimeFormat.options](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/DateTimeFormat#parameters) parameter that specifies the formatting style to use for `localeString` format.\n\nNote that if the `displayIn` prop is set to `utc`, the value of `localeOptions.timeZone` will automatically be converted to `UTC`.\n\n#### `render`\n\nOptional callback that should render a template. The callback will be provided an object with properties/values related to the date expressed in `datetime`.\n\nBy default, the Bento Date Display component will display the [`localeString` form of the Date](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/toLocaleString) for the given locale and localeOption. See the [Returned Time Parameters section](#returned-time-parameters) for more details on how each property will be displayed.\n\n```typescript\n(dateParams: DateParams) => JSXInternal.Element\ninterface DateParams {\n  day: number;\n  dayName: string;\n  dayNameShort: string;\n  dayPeriod: string;\n  dayTwoDigit: string;\n  hour: number;\n  hour12: number;\n  hour12TwoDigit: string;\n  hourTwoDigit: string;\n  iso: string;\n  localeString: string;\n  minute: number;\n  minuteTwoDigit: string;\n  month: number;\n  monthName: string;\n  monthNameShort: string;\n  monthTwoDigit: string;\n  second: number;\n  secondTwoDigit: string;\n  timeZoneName: string;\n  timeZoneNameShort: string;\n  year: number;\n  yearTwoDi: string;\n}\n```\n\n### Returned Time Parameters\n\nThis table lists the format you can specify in your Mustache template:\n\n| Format            | Meaning                                                       |\n| ----------------- | ------------------------------------------------------------- |\n| day               | 1, 2, ...12, 13, etc.                                         |\n| dayName           | string,                                                       |\n| dayNameShort      | string,                                                       |\n| dayPeriod         | string,                                                       |\n| dayTwoDigit       | 01, 02, 03, ..., 12, 13, etc.                                 |\n| hour              | 0, 1, 2, 3, ..., 12, 13, ..., 22, 23                          |\n| hour12            | 1, 2, 3, ..., 12, 1, 2, ..., 11, 12                           |\n| hour12TwoDigit    | 01, 02, ..., 12, 01, 02, ..., 11, 12                          |\n| hourTwoDigit      | 00, 01, 02, ..., 12, 13, ..., 22, 23                          |\n| iso               | A standard ISO8601 date string e.g. 2019-01-23T15:31:21.213Z, |\n| localeString      | A string with a language sensitive representation.            |\n| minute            | 0, 1, 2, ..., 58, 59                                          |\n| minuteTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| month             | 1, 2, 3, ..., 12                                              |\n| monthName         | Internationalized month name string.                          |\n| monthNameShort    | Internationalized abbreviated month name string.,             |\n| monthTwoDigit     | 01, 02, ..., 11, 12                                           |\n| second            | 0, 1, 2, ..., 58, 59                                          |\n| secondTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| timeZoneName      | Internationalized timezone, like `Pacific Daylight Time`      |\n| timeZoneNameShort | Internationalized timezone, abbreviated, like `PST`           |\n| year              | 0, 1, 2, ..., 1999, 2000, 2001, etc.                          |\n| yearTwoDigit      | 00, 01, 02, ..., 17, 18, 19, ..., 98, 99                      |\n","readmeFilename":"README.md","gitHead":"fa0da0bef1bacbbaabdd17ebdc31b018e6450c58","bugs":{"url":"https://github.com/ampproject/amphtml/issues"},"_id":"@bentoproject/date-display@1.2202252101.0","_nodeVersion":"16.14.0","_npmVersion":"8.3.1","dist":{"integrity":"sha512-XcZhxOQYyR5ZNhyPunkOzhrukNOHhITx6UShrsSy5V+Rm+n9ZJH4dhAzH4jGY26iIWaJ32599ida0Sdez+MWug==","shasum":"62b50f1d0a1c76ce3d4fc47de625aeca9fb2e85e","tarball":"https://registry.npmjs.org/@bentoproject/date-display/-/date-display-1.2202252101.0.tgz","fileCount":28,"unpackedSize":1938753,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiHPxBACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmqu+g/+LcuH/r/zvOXtNXj5xw4Uajz/mdUQbbU3dGbsUKi4t8Uavx0D\r\n11uLtASdMRUcnuo7otsycZ2PVVznhupkK00hWZg6VARiWP1o71LAU71Zo2J+\r\n4HRdf6iQjHZPN6YNczHnzLqZHnOKEADDYaTGIZVSAz3EwA5oj8FsdxyodU0+\r\nND8RQYdZO5eRLgoMNqeyHIBrhBHLZD7FYsBc/u+uaF53YhYTG4Q+o5KNcYvv\r\n95CeTs40duBLdgpjyf3lN1c+I4OwVboCgIfhUijjXOIm5uv4g74UP5dBQeGJ\r\nBjbW4Zs33WkIz+2uPm1PhOAbhaRetenVuXsU1wNh4A77PIBhEbs3n3TXvcJe\r\nHVt1h7CRdSrSyi0l79OHcvtF4lds5yRj1cjaTOVc9pnQAHvR4uGPT6K+1cHx\r\nuGfUNGg9igYpj+7dlLOl8NPPLWT7QMSbztZTZl79Zh1Zge4PMx2WI6DePYff\r\nBF8okQn/F9nvZxJ/etPknacvmqm73HvXpvHse/StR9Ybj1pXRIoX/WiJKIqr\r\nbi8TgpW0g6PUTseuObSACXWB84HXC8xPVl4+FJryhrmM7TiVOB+TsqHEGMbh\r\neCPWxGHYpGPRndtM1PuC/wR6qw1Aq0inYI7TJCRmq3y6aapuXNcS6MIsTUdU\r\nDeCB6uEWL+tNyq76wiBmw9yKzyP4zZIDwkw=\r\n=svLI\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIFX7rAb+PvoMOmELQLrv/qYeCgFn4hCfFZGPspnfXkd0AiBWYkx1WaFtkQl+KftlXOcHVOBdKEgeeneOB65ASL+tEw=="}]},"_npmUser":{"name":"bentoprojectbot","email":"bentobot@amp.dev"},"directories":{},"maintainers":[{"name":"bentoprojectbot","email":"bentobot@amp.dev"},{"name":"kristoferbaxter","email":"kbax@me.com"},{"name":"esth","email":"esther@amp.dev"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/date-display_1.2202252101.0_1646066753264_0.8748479732603469"},"_hasShrinkwrap":false},"1.2202230359.1":{"name":"@bentoproject/date-display","version":"1.2202230359.1","description":"Displays time data that you can render in your page.","author":{"name":"Bento Authors"},"license":"Apache-2.0","main":"./dist/web-component.js","module":"./dist/web-component.module.js","exports":{".":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./web-component":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./preact":{"import":"./dist/component-preact.module.js","require":"./dist/component-preact.js"},"./react":{"import":"./dist/component-react.module.js","require":"./dist/component-react.js"},"./web-component.css":"./dist/web-component.css"},"repository":{"type":"git","url":"git+https://github.com/ampproject/amphtml.git","directory":"extensions/amp-date-display/1.0"},"homepage":"https://github.com/ampproject/amphtml/tree/main/extensions/amp-date-display/1.0","peerDependencies":{"preact":"^10.2.1","react":"^17.0.0"},"gitHead":"f459124bb58e0a0d2076f658b8fbe3c9db13a04e","bugs":{"url":"https://github.com/ampproject/amphtml/issues"},"_id":"@bentoproject/date-display@1.2202230359.1","_nodeVersion":"16.14.0","_npmVersion":"8.3.1","dist":{"integrity":"sha512-cbALu+sKEJP7L5BwPRU2IhQK85pwq2/0pNEx6NM+yhHSB6bbE9cVqS/GFxFkgnWjObOIfrnlVQrh5HoLSHp8Zw==","shasum":"a91cdbf3a6aa31f322c2392a03a189fab04a5115","tarball":"https://registry.npmjs.org/@bentoproject/date-display/-/date-display-1.2202230359.1.tgz","fileCount":28,"unpackedSize":1938752,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiHpjnACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmryeg/+LkUFTkPR3cbV5JS2/bLOlKd1/jclwAjFKD/UQ40oUB8kTHWc\r\nGT5hs79Nd2Hyet+9uG1ZZKgIU5YCr+n4vva0ekjvPsOuGeGZLcabMffM6FRW\r\nhsDVbPEjUcr0/jMC/xGRlpfI4NBKOFrhFZDlyGQ7TFxKSnI0DKlfpKka8HLq\r\nbG7vjlXMD9bYGdm3YQX0zQcVTUk5MlisK5d3ZdHf9kvUJLwkrLZAKeTCN8gJ\r\nvfWqQwtOMz1CsVP9oG8OAbjlLRBrx1vmARdA6X1gbsd9spS3GAWSNfYyb6FJ\r\n2updZCV9J2plxjCz3NZrsQSYC+EXHiAI3w1p7COJRRdKQIlFBSN3zf0KlzgR\r\nfvuv9LHRrcZ+cbgZO8i5NduVCk9X/I7KzhLDvipEzCLatZQPz9wbpt5QvyKA\r\n6Lv8aMySe1f4hAbvqO03BKjWmffJnJ4GIec/18uHrSt55jWkrel2uOgfgKrM\r\nCbCuHW9OhHZCr2lIf4Sop0RZ368YTF+zLTGf4l9QDjXLsbxx7Kz+N9Vr/lZx\r\nCHxTK2FcAdkYPZK920CVaqAwVvZecFVQRIv0vc82zlChwwuuCVL2XmA80p3L\r\nNcSm0qX7yd19Bo/PmxfeyNBdQSGWINzLsNbbnXpoCk9ndawwZsyZ2Y5wFtb1\r\nfcISF/LqjV4S+pkDXcTkhR+W1ywsnW+VeOs=\r\n=t3vp\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQC7OJsAO0fJpga78Mui7iiRdlHfKDAljefpeGWRN0QKHQIhAKhqYs8oLaT9jwah7FQV2feTFoe2AUKMbccEf/MQltFg"}]},"_npmUser":{"name":"bentoprojectbot","email":"bentobot@amp.dev"},"directories":{},"maintainers":[{"name":"bentoprojectbot","email":"bentobot@amp.dev"},{"name":"kristoferbaxter","email":"kbax@me.com"},{"name":"esth","email":"esther@amp.dev"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/date-display_1.2202230359.1_1646172390962_0.20140034828531328"},"_hasShrinkwrap":false},"1.2203041950.0":{"name":"@bentoproject/date-display","version":"1.2203041950.0","description":"Displays time data that you can render in your page.","author":{"name":"Bento Authors"},"license":"Apache-2.0","main":"./dist/web-component.js","module":"./dist/web-component.module.js","exports":{".":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./web-component":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./preact":{"import":"./dist/component-preact.module.js","require":"./dist/component-preact.js"},"./react":{"import":"./dist/component-react.module.js","require":"./dist/component-react.js"},"./web-component.css":"./dist/web-component.css"},"repository":{"type":"git","url":"git+https://github.com/ampproject/amphtml.git","directory":"extensions/amp-date-display/1.0"},"homepage":"https://github.com/ampproject/amphtml/tree/main/extensions/amp-date-display/1.0","peerDependencies":{"preact":"^10.2.1","react":"^17.0.0"},"dependencies":{"@bentoproject/core":"0.2203041950.0"},"gitHead":"419d49d2920fbdf4bf88e8efc3421f7c37ec209b","bugs":{"url":"https://github.com/ampproject/amphtml/issues"},"_id":"@bentoproject/date-display@1.2203041950.0","_nodeVersion":"16.14.0","_npmVersion":"8.3.1","dist":{"integrity":"sha512-0Fazib39qoRbbkDsxnkT3qETIMJFDSZJSRiVqK3wQEYWNRdFS/VgJbTpkPNFbaVNqsHt6pzUNy2Qd0ujb8lsrg==","shasum":"1b9ea9cc38534cd8568379ebae6f82fd7320d5e5","tarball":"https://registry.npmjs.org/@bentoproject/date-display/-/date-display-1.2203041950.0.tgz","fileCount":28,"unpackedSize":792073,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiMNyPACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmo36A/+Iyn8NRSC90VMDSCh7zLyonJiJAZmbyLiKXEGkkopTO3xtlAO\r\nON1QD1SUvad3Rjmm6DGne2o4rd640wu/6/kfmuRcnfenZ7h+bho4lyIhf+bq\r\nT6HPBkUsMtVNZGPj+lcuigS9FnuoHgnrkVWFI2OMmiJZrhSOMuWUWDyU4ArG\r\nRsS1YtBcTjsW/LQseKKc7qbXhRGZuu/doVmWWrcj4qkC/NegVFZv2X+d4ups\r\nTdTjl5N7En8tqJEucp8LyUDdqa6Rlu/ec3ZsNdmbtOC2ANTwnsJXBnQ0EPZC\r\nt43R1Ma2IYS9rUAR4VaqYyDmMUpzuOOBWAqz7YYp6i4AOY91QOQYv1GzzM9D\r\ng9MFSwSEOyRskrYXH++NAhOVwVbxP37+6D3wxnjS1clpnQfZCn+Ghs0RRY7M\r\nTg5Sl5eCGiiCHnVGjPND4LhxbSSCg1wq2RgkQvQJf/2jZuJnRZxjdkREDkov\r\nRNtEx3gLQzHX9Ika/IX4KsCPMvQFPTWV4qCbfhXoGsT4euNsraEtECkh3VPO\r\n3p/tylzoaR33Q+WwBqzhwDPgLo6NhNDLUAzdQeMWsv20CqlZ4P+YboI0HRPV\r\n11V98sTBNZ6yFOFDt+Qk6RseeIVzFy/Xf4JmZ+OVkaH4QNd3pQjcNPPhQYOq\r\n1T1LX0AzbfaB/YXAp+qKuqsPbHb7bHX4/4w=\r\n=Sdi3\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDXAAHJNEyzrW++Bl67x/pNqoUlzqSFX0ZVmXJODkbxKAIgL3E8YedmA9SqlMsOfT0/gRLlw6dtoV5EOAP0jBrjIjM="}]},"_npmUser":{"name":"bentoprojectbot","email":"bentobot@amp.dev"},"directories":{},"maintainers":[{"name":"bentoprojectbot","email":"bentobot@amp.dev"},{"name":"kristoferbaxter","email":"kbax@me.com"},{"name":"esth","email":"esther@amp.dev"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/date-display_1.2203041950.0_1647369359270_0.5674992255700846"},"_hasShrinkwrap":false},"1.2203151539.0":{"name":"@bentoproject/date-display","version":"1.2203151539.0","description":"Displays time data that you can render in your page.","author":{"name":"Bento Authors"},"license":"Apache-2.0","main":"./dist/web-component.js","module":"./dist/web-component.module.js","exports":{".":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./web-component":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./preact":{"import":"./dist/component-preact.module.js","require":"./dist/component-preact.js"},"./react":{"import":"./dist/component-react.module.js","require":"./dist/component-react.js"},"./web-component.css":"./dist/web-component.css"},"repository":{"type":"git","url":"git+https://github.com/ampproject/amphtml.git","directory":"extensions/amp-date-display/1.0"},"homepage":"https://github.com/ampproject/amphtml/tree/main/extensions/amp-date-display/1.0","peerDependencies":{"preact":"^10.2.1","react":"^17.0.0"},"dependencies":{"@bentoproject/core":"0.2203151539.0"},"readme":"# Bento Date Display\n\nDisplays time data that you can render in your page. By providing specific [attributes](#attributes) in the Bento Date Display tag, the Bento Date Display extension returns a list of time parameters, which you can pass to [an amp-mustache template](../../amp-mustache/amp-mustache.md) for rendering. Refer to the [list below for each returned time parameter](#returned-time-parameters).\n\n## Web Component\n\nWe don't support the web component version of `bento-date-display` since `<template>` support is still being designed. This effort can be tracked in this [issue](https://go.amp.dev/issue/36619).\n\n<!--\nAn older version of this file contains the removed section, though it's incorrect:\n\nhttps://github.com/ampproject/amphtml/blob/422d171e87571c4d125a2bf956e78e92444c10e8/extensions/amp-date-display/1.0/README.md\n-->\n\n---\n\n## Preact/React Component\n\n### Import via npm\n\n```sh\nnpm install @bentoproject/date-display\n```\n\n```javascript\nimport React from 'react';\nimport {BentoDateDisplay} from '@bentoproject/date-display/react';\nimport '@bentoproject/date-display/styles.css';\n\nfunction App() {\n  return (\n    <BentoDateDisplay\n      datetime={dateTime}\n      displayIn={displayIn}\n      locale={locale}\n      render={(date) => (\n        <div>{`ISO: ${date.iso}; locale: ${date.localeString}`}</div>\n      )}\n    />\n  );\n}\n```\n\n### Interactivity and API usage\n\nThe Bento Date Display component does not have an imperative API. However, the Bento Date Display Preact/React component does accept a `render` prop that renders the consumer's template. This `render` prop should be a function which the Bento Date Display Preact/React component can use to render its template. The `render` callback will be provided a variety of date-related parameters for consumers to interpolate in the rendered template. See the [`render` prop section](#render) for more information.\n\n### Layout and style\n\nThe Bento Date Display Preact/React component allows consumers to render their own templates. These templates may use inline styles, `<style>` tags, Preact/React components that import their own stylesheets.\n\n### Props\n\n#### `datetime`\n\nRequired prop. Denotes the date and time as a Date, String, or Number. If String, must be a standard ISO 8601 date string (e.g. 2017-08-02T15:05:05.000Z) or the string `now`. If set to `now`, it will use the time the page loaded to render its template. If Number, must be a POSIX epoch value in milliseconds.\n\n#### `displayIn`\n\nOptional prop that can be either `\"utc\"` or `\"local\"` and defaults to `\"local\"`. This prop indicates what timezone to display the date in. If set to the value `\"utc\"`, the component will convert the given date to UTC.\n\n#### `locale`\n\nAn internationalization language string for each timer unit. The default value is `en` (for English). This prop supports all values that are supported by the user's browser.\n\n#### `localeOptions`\n\nThe `localeOptions` object supports all the options under [Intl.DateTimeFormat.options](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/DateTimeFormat#parameters) parameter that specifies the formatting style to use for `localeString` format.\n\nNote that if the `displayIn` prop is set to `utc`, the value of `localeOptions.timeZone` will automatically be converted to `UTC`.\n\n#### `render`\n\nOptional callback that should render a template. The callback will be provided an object with properties/values related to the date expressed in `datetime`.\n\nBy default, the Bento Date Display component will display the [`localeString` form of the Date](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/toLocaleString) for the given locale and localeOption. See the [Returned Time Parameters section](#returned-time-parameters) for more details on how each property will be displayed.\n\n```typescript\n(dateParams: DateParams) => JSXInternal.Element\ninterface DateParams {\n  day: number;\n  dayName: string;\n  dayNameShort: string;\n  dayPeriod: string;\n  dayTwoDigit: string;\n  hour: number;\n  hour12: number;\n  hour12TwoDigit: string;\n  hourTwoDigit: string;\n  iso: string;\n  localeString: string;\n  minute: number;\n  minuteTwoDigit: string;\n  month: number;\n  monthName: string;\n  monthNameShort: string;\n  monthTwoDigit: string;\n  second: number;\n  secondTwoDigit: string;\n  timeZoneName: string;\n  timeZoneNameShort: string;\n  year: number;\n  yearTwoDi: string;\n}\n```\n\n### Returned Time Parameters\n\nThis table lists the format you can specify in your Mustache template:\n\n| Format            | Meaning                                                       |\n| ----------------- | ------------------------------------------------------------- |\n| day               | 1, 2, ...12, 13, etc.                                         |\n| dayName           | string,                                                       |\n| dayNameShort      | string,                                                       |\n| dayPeriod         | string,                                                       |\n| dayTwoDigit       | 01, 02, 03, ..., 12, 13, etc.                                 |\n| hour              | 0, 1, 2, 3, ..., 12, 13, ..., 22, 23                          |\n| hour12            | 1, 2, 3, ..., 12, 1, 2, ..., 11, 12                           |\n| hour12TwoDigit    | 01, 02, ..., 12, 01, 02, ..., 11, 12                          |\n| hourTwoDigit      | 00, 01, 02, ..., 12, 13, ..., 22, 23                          |\n| iso               | A standard ISO8601 date string e.g. 2019-01-23T15:31:21.213Z, |\n| localeString      | A string with a language sensitive representation.            |\n| minute            | 0, 1, 2, ..., 58, 59                                          |\n| minuteTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| month             | 1, 2, 3, ..., 12                                              |\n| monthName         | Internationalized month name string.                          |\n| monthNameShort    | Internationalized abbreviated month name string.,             |\n| monthTwoDigit     | 01, 02, ..., 11, 12                                           |\n| second            | 0, 1, 2, ..., 58, 59                                          |\n| secondTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| timeZoneName      | Internationalized timezone, like `Pacific Daylight Time`      |\n| timeZoneNameShort | Internationalized timezone, abbreviated, like `PST`           |\n| year              | 0, 1, 2, ..., 1999, 2000, 2001, etc.                          |\n| yearTwoDigit      | 00, 01, 02, ..., 17, 18, 19, ..., 98, 99                      |\n","readmeFilename":"README.md","gitHead":"fc739c0d339dbae236fa53a87188f5f7ca58f25c","bugs":{"url":"https://github.com/ampproject/amphtml/issues"},"_id":"@bentoproject/date-display@1.2203151539.0","_nodeVersion":"16.14.0","_npmVersion":"8.3.1","dist":{"integrity":"sha512-wv1mAgd6AFsjdugWn3eAxXgzbjIcmBAkIE8rezKxRhObvX/arAPCWcyT9KSB0bdviU4pfAXiQ7yWj5VP90k+0g==","shasum":"a7b8c02b9fbd115790646bafc9c99ca7e5aa1288","tarball":"https://registry.npmjs.org/@bentoproject/date-display/-/date-display-1.2203151539.0.tgz","fileCount":28,"unpackedSize":792073,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiMZ4qACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqWXA/6A9+o9RNQqNzcQFqudvvwwhuz6In+aab44OTpOnEoq0lM7mtP\r\njL+WUQzIEh5ZTO86EXPrGE8Ka9L5N7N/HTtPKj6EdVh1t98eCu5ZIeZhMgpw\r\nBNubVgoq67kaA09A6DMW2OLkTGXRHPSYd7754x3E1HFC22UFESu7Wn0NGLWE\r\n4fVUEpKExn+RQ4CxAAXZDO3snPnfWqJtGUP/s7jh6AMREvfZ0cZelnLeZ0lC\r\n2k8J2tpyVNLi/I6X2Q6q0n3vg0lYZfG3RaMm9oVUj4HcyaBJ3PXnJFQsxb9F\r\nkVyIN9iJVsqEBvnYshl1R724zfSK7Y5K16+UXToAJ1cDbh2xb4rhFQJNyVqf\r\na7aQ14gyYvXBFIU1T5Ib31Q69XPcftDigBxt0UEntbG8RRWGGlNE5ji8CqRM\r\nOjiWx+ZLcCGHCKsTPKS7AiWE0672IhF+jttAvcATCWk0vEFuhG4vSPSAjfnJ\r\n4Y8cf580Ryg8K5Zhx0+mg7OxKwATVMOzji0iQMlX+dntDWnLVRkeegabT3+2\r\nZYOqvpuzXYf3fj5DhJMYmB0qOvo8wH0VXlgnKch2tB9BmTr6cGbjNP36iJ0z\r\n4oaYhkXT/7pWpDYet3cRcsZVmFRWEIFD2K0EgUvFk6hrKyBIvO7xiUmBTcfQ\r\nB0kl0SHu0Zohht3jFPzPmd3MDH4bFRVZlTE=\r\n=0fnQ\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIDf74NV3wfBFj/omH55Dm/nKag4iYRm9MDIOpN8cOUeBAiBko0E/7tdZn2thHlWEgYcmvu9vHDd5uFMASKCufMu+iQ=="}]},"_npmUser":{"name":"bentoprojectbot","email":"bentobot@amp.dev"},"directories":{},"maintainers":[{"name":"bentoprojectbot","email":"bentobot@amp.dev"},{"name":"kristoferbaxter","email":"kbax@me.com"},{"name":"esth","email":"esther@amp.dev"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/date-display_1.2203151539.0_1647418921847_0.06572796406209891"},"_hasShrinkwrap":false},"1.2203172113.0":{"name":"@bentoproject/date-display","version":"1.2203172113.0","description":"Displays time data that you can render in your page.","author":{"name":"Bento Authors"},"license":"Apache-2.0","main":"./dist/web-component.js","module":"./dist/web-component.module.js","exports":{".":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./web-component":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./preact":{"import":"./dist/component-preact.module.js","require":"./dist/component-preact.js"},"./react":{"import":"./dist/component-react.module.js","require":"./dist/component-react.js"},"./web-component.css":"./dist/web-component.css"},"repository":{"type":"git","url":"git+https://github.com/ampproject/amphtml.git","directory":"extensions/amp-date-display/1.0"},"homepage":"https://github.com/ampproject/amphtml/tree/main/extensions/amp-date-display/1.0","peerDependencies":{"preact":"^10.2.1","react":"^17.0.0"},"dependencies":{"@bentoproject/core":"0.2203172113.0"},"gitHead":"96b2159ef70d24edf6c33303cb76a623a4669cfb","bugs":{"url":"https://github.com/ampproject/amphtml/issues"},"_id":"@bentoproject/date-display@1.2203172113.0","_nodeVersion":"16.14.0","_npmVersion":"8.3.1","dist":{"integrity":"sha512-Ezw6tEeq84/6RN9P0ZHXj7zFIphhJIXlAjH8N1T0L71aRtiQBis0L1Xnnd9ddcHaFAEL+xCbjwI5EWMmo3/Y9w==","shasum":"2c525c48071cb50287f433c7f49a69b7b7a48feb","tarball":"https://registry.npmjs.org/@bentoproject/date-display/-/date-display-1.2203172113.0.tgz","fileCount":28,"unpackedSize":792613,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiNEFyACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmpp9Q/+NMinbCBbUvypprywIpmbfGO+izAV/SZN/JrgPDwemyX7DQ1W\r\nqPBtZHP483+V4lPIj+1YD1MHmooInUaDO4bnyDbeH1L+KBFhN+qqcq6NTX+3\r\n08FUBcUb3rOt+TcEbY1yccNVydddL17PlWe70UDBXezM/VrPdA48KQM/YM1x\r\nfnOdHBlHI64MZWdMkeGnicMM0L7z5e+FVjYHCbLblEDBK04P52sPLsyTIMzU\r\n/p4E8pizJMba31vYf+oxu6Axt+R4pazOdtepREPoHJSL3V0XGVxpFI3WALgG\r\n1/euUdklgNDmw6vn1fMu+7ncliS+dN8bM6ZSi1mTsCBPUYEt6Z00kDOsWvBW\r\npiC/Kpbl16mhuqmb2MZbIXv1R2YqLuR0qV8fDnRchdp4ZZfwbotnGGUTxqI5\r\n829SPtAaQcbu6Ih+tIKgK0oaoco8N2p7E2LoRfag7/tpdCpDl6KN+GlWGK/h\r\nERKK6DrWZsOFoKmw+MEpnbsVtTnsKusemJXzSDeyY8TMBu8TdwaJ3y2NabQa\r\nQ5Wn0634Q6TWolSRdtK75YYvEEOlZyw5/btaMHYPmqXiwMy19Ino2el1beo6\r\nY3yBZ2vG5qY4Hxd8TGQwA7bS0m4WxH5nnHp3+ONwaO2XX5KefLRO1uxyEc3A\r\nhRm/cxUcwtIoDQQ4R+1HtBqnRP2dtkZacf0=\r\n=dvQs\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIF+QRuFOQC0yDKgaRFhjM2SLg6WXBKJXePlortICHbD1AiBNB6eDCM+V+1WjBBeXWBmCgpAdzo/A+gm9azRko/4c1A=="}]},"_npmUser":{"name":"bentoprojectbot","email":"bentobot@amp.dev"},"directories":{},"maintainers":[{"name":"bentoprojectbot","email":"bentobot@amp.dev"},{"name":"kristoferbaxter","email":"kbax@me.com"},{"name":"esth","email":"esther@amp.dev"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/date-display_1.2203172113.0_1647591794542_0.3488830210855187"},"_hasShrinkwrap":false},"1.2203221937.0":{"name":"@bentoproject/date-display","version":"1.2203221937.0","description":"Displays time data that you can render in your page.","author":{"name":"Bento Authors"},"license":"Apache-2.0","main":"./dist/web-component.js","module":"./dist/web-component.module.js","exports":{".":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./web-component":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./preact":{"import":"./dist/component-preact.module.js","require":"./dist/component-preact.js"},"./react":{"import":"./dist/component-react.module.js","require":"./dist/component-react.js"},"./web-component.css":"./dist/web-component.css"},"repository":{"type":"git","url":"git+https://github.com/ampproject/amphtml.git","directory":"extensions/amp-date-display/1.0"},"homepage":"https://github.com/ampproject/amphtml/tree/main/extensions/amp-date-display/1.0","peerDependencies":{"preact":"^10.2.1","react":"^17.0.0"},"dependencies":{"@bentoproject/core":"0.2203221937.0"},"readme":"# Bento Date Display\n\nDisplays time data that you can render in your page. By providing specific [attributes](#attributes) in the Bento Date Display tag, the Bento Date Display extension returns a list of time parameters, which you can pass to [an amp-mustache template](../../amp-mustache/amp-mustache.md) for rendering. Refer to the [list below for each returned time parameter](#returned-time-parameters).\n\n## Web Component\n\nWe don't support the web component version of `bento-date-display` since `<template>` support is still being designed. This effort can be tracked in this [issue](https://go.amp.dev/issue/36619).\n\n<!--\nAn older version of this file contains the removed section, though it's incorrect:\n\nhttps://github.com/ampproject/amphtml/blob/422d171e87571c4d125a2bf956e78e92444c10e8/extensions/amp-date-display/1.0/README.md\n-->\n\n---\n\n## Preact/React Component\n\n### Import via npm\n\n```sh\nnpm install @bentoproject/date-display\n```\n\n```javascript\nimport React from 'react';\nimport {BentoDateDisplay} from '@bentoproject/date-display/react';\nimport '@bentoproject/date-display/styles.css';\n\nfunction App() {\n  return (\n    <BentoDateDisplay\n      datetime={dateTime}\n      displayIn={displayIn}\n      locale={locale}\n      render={(date) => (\n        <div>{`ISO: ${date.iso}; locale: ${date.localeString}`}</div>\n      )}\n    />\n  );\n}\n```\n\n### Interactivity and API usage\n\nThe Bento Date Display component does not have an imperative API. However, the Bento Date Display Preact/React component does accept a `render` prop that renders the consumer's template. This `render` prop should be a function which the Bento Date Display Preact/React component can use to render its template. The `render` callback will be provided a variety of date-related parameters for consumers to interpolate in the rendered template. See the [`render` prop section](#render) for more information.\n\n### Layout and style\n\nThe Bento Date Display Preact/React component allows consumers to render their own templates. These templates may use inline styles, `<style>` tags, Preact/React components that import their own stylesheets.\n\n### Props\n\n#### `datetime`\n\nRequired prop. Denotes the date and time as a Date, String, or Number. If String, must be a standard ISO 8601 date string (e.g. 2017-08-02T15:05:05.000Z) or the string `now`. If set to `now`, it will use the time the page loaded to render its template. If Number, must be a POSIX epoch value in milliseconds.\n\n#### `displayIn`\n\nOptional prop that can be either `\"utc\"` or `\"local\"` and defaults to `\"local\"`. This prop indicates what timezone to display the date in. If set to the value `\"utc\"`, the component will convert the given date to UTC.\n\n#### `locale`\n\nAn internationalization language string for each timer unit. The default value is `en` (for English). This prop supports all values that are supported by the user's browser.\n\n#### `localeOptions`\n\nThe `localeOptions` object supports all the options under [Intl.DateTimeFormat.options](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/DateTimeFormat#parameters) parameter that specifies the formatting style to use for `localeString` format.\n\nNote that if the `displayIn` prop is set to `utc`, the value of `localeOptions.timeZone` will automatically be converted to `UTC`.\n\n#### `render`\n\nOptional callback that should render a template. The callback will be provided an object with properties/values related to the date expressed in `datetime`.\n\nBy default, the Bento Date Display component will display the [`localeString` form of the Date](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/toLocaleString) for the given locale and localeOption. See the [Returned Time Parameters section](#returned-time-parameters) for more details on how each property will be displayed.\n\n```typescript\n(dateParams: DateParams) => JSXInternal.Element\ninterface DateParams {\n  day: number;\n  dayName: string;\n  dayNameShort: string;\n  dayPeriod: string;\n  dayTwoDigit: string;\n  hour: number;\n  hour12: number;\n  hour12TwoDigit: string;\n  hourTwoDigit: string;\n  iso: string;\n  localeString: string;\n  minute: number;\n  minuteTwoDigit: string;\n  month: number;\n  monthName: string;\n  monthNameShort: string;\n  monthTwoDigit: string;\n  second: number;\n  secondTwoDigit: string;\n  timeZoneName: string;\n  timeZoneNameShort: string;\n  year: number;\n  yearTwoDi: string;\n}\n```\n\n### Returned Time Parameters\n\nThis table lists the format you can specify in your Mustache template:\n\n| Format            | Meaning                                                       |\n| ----------------- | ------------------------------------------------------------- |\n| day               | 1, 2, ...12, 13, etc.                                         |\n| dayName           | string,                                                       |\n| dayNameShort      | string,                                                       |\n| dayPeriod         | string,                                                       |\n| dayTwoDigit       | 01, 02, 03, ..., 12, 13, etc.                                 |\n| hour              | 0, 1, 2, 3, ..., 12, 13, ..., 22, 23                          |\n| hour12            | 1, 2, 3, ..., 12, 1, 2, ..., 11, 12                           |\n| hour12TwoDigit    | 01, 02, ..., 12, 01, 02, ..., 11, 12                          |\n| hourTwoDigit      | 00, 01, 02, ..., 12, 13, ..., 22, 23                          |\n| iso               | A standard ISO8601 date string e.g. 2019-01-23T15:31:21.213Z, |\n| localeString      | A string with a language sensitive representation.            |\n| minute            | 0, 1, 2, ..., 58, 59                                          |\n| minuteTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| month             | 1, 2, 3, ..., 12                                              |\n| monthName         | Internationalized month name string.                          |\n| monthNameShort    | Internationalized abbreviated month name string.,             |\n| monthTwoDigit     | 01, 02, ..., 11, 12                                           |\n| second            | 0, 1, 2, ..., 58, 59                                          |\n| secondTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| timeZoneName      | Internationalized timezone, like `Pacific Daylight Time`      |\n| timeZoneNameShort | Internationalized timezone, abbreviated, like `PST`           |\n| year              | 0, 1, 2, ..., 1999, 2000, 2001, etc.                          |\n| yearTwoDigit      | 00, 01, 02, ..., 17, 18, 19, ..., 98, 99                      |\n","readmeFilename":"README.md","gitHead":"11fb2607ccf78c526a38e31bc141dbd3ac75d326","bugs":{"url":"https://github.com/ampproject/amphtml/issues"},"_id":"@bentoproject/date-display@1.2203221937.0","_nodeVersion":"16.14.0","_npmVersion":"8.3.1","dist":{"integrity":"sha512-HJ1Q+j/1PAhBGkCXyxp931cpoqmkuuAsB1qW1Fabdnjls2lvTcW/9BFIYyniQ4DH08AO1cV8VVYXqJSNfQ+D1Q==","shasum":"3682eb12277c6dbe5759611e0383f9e7deafa0bf","tarball":"https://registry.npmjs.org/@bentoproject/date-display/-/date-display-1.2203221937.0.tgz","fileCount":28,"unpackedSize":792613,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiOtlqACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmppfA//cSbCdrnke6A0aibKEgQ4YRH1N/KrRj+F07hzTCfmNpcklzHQ\r\n2khZz4xvOA7m05ONGKPmEpUBDG7CQP5Hj3nq8+AM9RkkEKDodkH/1FNFZ/tf\r\njp0CPc3ZKMILdshSUNX8A+jGCEdut5XRzQjO939QDWIvDhKqb98b7neZtJ/T\r\n3yAHp0QGa8zEjE9U5kQkvOerOlYHL8sW3KSZYuKqGOh9b0hKlPpt9TMWGxLb\r\noyISBWL2fYf1Fo9lZw1NN7mzMgIAVwiheeAwxRhSf7nDKn6as+Oo2qUJsMh0\r\nU158RJZUBFtLkNPjlUQ5CEYcQTtLi5mFsyn3i3UTmTfZ0ogBWZjaNIuv4hNC\r\nRRmQfix7hX0ynvGfOL9MYrAWCazUGlPv3VUI9vzxLO3e/8LLDPHfbWIz1M/q\r\nwXHg+rrXDrMuB0kjOaPupHUdI8RUX2hdJD6DBhHLGJaFHkHE8gi7KpgADsye\r\nln5HYEhtb1QPodZ8UghFFr2Kn/TS0pNAC0oNoTewyIeQ9irk1ci+yDMwg0o2\r\nYLiUJI/diEATVNuqIHA+z5YBl+qimuU4W4SkkmD/O+UEEd7Yc1S6j8xBPy3i\r\nqtC8kNc4rVhZ1jFKpIKFPW1Xpl2Yl+IPUNno4wgjZqrjfVCzuAjUmSqsjUvo\r\ntQiQ9jdNfTSgyWIAqrqWfVyFHAzFK2d8Fs4=\r\n=RLjt\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCP2sro0goEwrNKEe1iDTgWwk+MiHEJjLkrY5UQptcldgIgMKj4wigE1BEsW/xcRjKLp0RwQs1u2uR/17RutPTLAGY="}]},"_npmUser":{"name":"bentoprojectbot","email":"bentobot@amp.dev"},"directories":{},"maintainers":[{"name":"bentoprojectbot","email":"bentobot@amp.dev"},{"name":"kristoferbaxter","email":"kbax@me.com"},{"name":"esth","email":"esther@amp.dev"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/date-display_1.2203221937.0_1648023913852_0.6277588070520688"},"_hasShrinkwrap":false},"1.2203231914.0":{"name":"@bentoproject/date-display","version":"1.2203231914.0","description":"Displays time data that you can render in your page.","author":{"name":"Bento Authors"},"license":"Apache-2.0","main":"./dist/web-component.js","module":"./dist/web-component.module.js","exports":{".":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./web-component":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./preact":{"import":"./dist/component-preact.module.js","require":"./dist/component-preact.js"},"./react":{"import":"./dist/component-react.module.js","require":"./dist/component-react.js"},"./web-component.css":"./dist/web-component.css"},"repository":{"type":"git","url":"git+https://github.com/ampproject/amphtml.git","directory":"extensions/amp-date-display/1.0"},"homepage":"https://github.com/ampproject/amphtml/tree/main/extensions/amp-date-display/1.0","peerDependencies":{"preact":"^10.2.1","react":"^17.0.0"},"dependencies":{"@bentoproject/core":"0.2203231914.0"},"readme":"# Bento Date Display\n\nDisplays time data that you can render in your page. By providing specific [attributes](#attributes) in the Bento Date Display tag, the Bento Date Display extension returns a list of time parameters, which you can pass to [an amp-mustache template](../../amp-mustache/amp-mustache.md) for rendering. Refer to the [list below for each returned time parameter](#returned-time-parameters).\n\n## Web Component\n\nWe don't support the web component version of `bento-date-display` since `<template>` support is still being designed. This effort can be tracked in this [issue](https://go.amp.dev/issue/36619).\n\n<!--\nAn older version of this file contains the removed section, though it's incorrect:\n\nhttps://github.com/ampproject/amphtml/blob/422d171e87571c4d125a2bf956e78e92444c10e8/extensions/amp-date-display/1.0/README.md\n-->\n\n---\n\n## Preact/React Component\n\n### Import via npm\n\n```sh\nnpm install @bentoproject/date-display\n```\n\n```javascript\nimport React from 'react';\nimport {BentoDateDisplay} from '@bentoproject/date-display/react';\nimport '@bentoproject/date-display/styles.css';\n\nfunction App() {\n  return (\n    <BentoDateDisplay\n      datetime={dateTime}\n      displayIn={displayIn}\n      locale={locale}\n      render={(date) => (\n        <div>{`ISO: ${date.iso}; locale: ${date.localeString}`}</div>\n      )}\n    />\n  );\n}\n```\n\n### Interactivity and API usage\n\nThe Bento Date Display component does not have an imperative API. However, the Bento Date Display Preact/React component does accept a `render` prop that renders the consumer's template. This `render` prop should be a function which the Bento Date Display Preact/React component can use to render its template. The `render` callback will be provided a variety of date-related parameters for consumers to interpolate in the rendered template. See the [`render` prop section](#render) for more information.\n\n### Layout and style\n\nThe Bento Date Display Preact/React component allows consumers to render their own templates. These templates may use inline styles, `<style>` tags, Preact/React components that import their own stylesheets.\n\n### Props\n\n#### `datetime`\n\nRequired prop. Denotes the date and time as a Date, String, or Number. If String, must be a standard ISO 8601 date string (e.g. 2017-08-02T15:05:05.000Z) or the string `now`. If set to `now`, it will use the time the page loaded to render its template. If Number, must be a POSIX epoch value in milliseconds.\n\n#### `displayIn`\n\nOptional prop that can be either `\"utc\"` or `\"local\"` and defaults to `\"local\"`. This prop indicates what timezone to display the date in. If set to the value `\"utc\"`, the component will convert the given date to UTC.\n\n#### `locale`\n\nAn internationalization language string for each timer unit. The default value is `en` (for English). This prop supports all values that are supported by the user's browser.\n\n#### `localeOptions`\n\nThe `localeOptions` object supports all the options under [Intl.DateTimeFormat.options](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/DateTimeFormat#parameters) parameter that specifies the formatting style to use for `localeString` format.\n\nNote that if the `displayIn` prop is set to `utc`, the value of `localeOptions.timeZone` will automatically be converted to `UTC`.\n\n#### `render`\n\nOptional callback that should render a template. The callback will be provided an object with properties/values related to the date expressed in `datetime`.\n\nBy default, the Bento Date Display component will display the [`localeString` form of the Date](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/toLocaleString) for the given locale and localeOption. See the [Returned Time Parameters section](#returned-time-parameters) for more details on how each property will be displayed.\n\n```typescript\n(dateParams: DateParams) => JSXInternal.Element\ninterface DateParams {\n  day: number;\n  dayName: string;\n  dayNameShort: string;\n  dayPeriod: string;\n  dayTwoDigit: string;\n  hour: number;\n  hour12: number;\n  hour12TwoDigit: string;\n  hourTwoDigit: string;\n  iso: string;\n  localeString: string;\n  minute: number;\n  minuteTwoDigit: string;\n  month: number;\n  monthName: string;\n  monthNameShort: string;\n  monthTwoDigit: string;\n  second: number;\n  secondTwoDigit: string;\n  timeZoneName: string;\n  timeZoneNameShort: string;\n  year: number;\n  yearTwoDi: string;\n}\n```\n\n### Returned Time Parameters\n\nThis table lists the format you can specify in your Mustache template:\n\n| Format            | Meaning                                                       |\n| ----------------- | ------------------------------------------------------------- |\n| day               | 1, 2, ...12, 13, etc.                                         |\n| dayName           | string,                                                       |\n| dayNameShort      | string,                                                       |\n| dayPeriod         | string,                                                       |\n| dayTwoDigit       | 01, 02, 03, ..., 12, 13, etc.                                 |\n| hour              | 0, 1, 2, 3, ..., 12, 13, ..., 22, 23                          |\n| hour12            | 1, 2, 3, ..., 12, 1, 2, ..., 11, 12                           |\n| hour12TwoDigit    | 01, 02, ..., 12, 01, 02, ..., 11, 12                          |\n| hourTwoDigit      | 00, 01, 02, ..., 12, 13, ..., 22, 23                          |\n| iso               | A standard ISO8601 date string e.g. 2019-01-23T15:31:21.213Z, |\n| localeString      | A string with a language sensitive representation.            |\n| minute            | 0, 1, 2, ..., 58, 59                                          |\n| minuteTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| month             | 1, 2, 3, ..., 12                                              |\n| monthName         | Internationalized month name string.                          |\n| monthNameShort    | Internationalized abbreviated month name string.,             |\n| monthTwoDigit     | 01, 02, ..., 11, 12                                           |\n| second            | 0, 1, 2, ..., 58, 59                                          |\n| secondTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| timeZoneName      | Internationalized timezone, like `Pacific Daylight Time`      |\n| timeZoneNameShort | Internationalized timezone, abbreviated, like `PST`           |\n| year              | 0, 1, 2, ..., 1999, 2000, 2001, etc.                          |\n| yearTwoDigit      | 00, 01, 02, ..., 17, 18, 19, ..., 98, 99                      |\n","readmeFilename":"README.md","gitHead":"9bf7cbdf0dbb4de2bc6b81fe042e52c990576b61","bugs":{"url":"https://github.com/ampproject/amphtml/issues"},"_id":"@bentoproject/date-display@1.2203231914.0","_nodeVersion":"16.14.0","_npmVersion":"8.3.1","dist":{"integrity":"sha512-fL/A/NBS9859Sz+SMgNnxEwJVntD/xvtCbOjbQgei2G1HUc4633W4KhHt3IE0jGeJUrtGJVdtRscRypM2ylsMA==","shasum":"7fe48c1613153309fe7d112e592dc1284496e6b6","tarball":"https://registry.npmjs.org/@bentoproject/date-display/-/date-display-1.2203231914.0.tgz","fileCount":28,"unpackedSize":792791,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiPCpvACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmoNeA/8CvaaDUwQ1h5hGYrJWdc/IlPMk7MRTus0T2PF+UxcMlgp7vcv\r\nqE2WkNCZ8tOHxk0WGmcxh41HDiaGqj6Cn4Wp/JSI0V2VZNJlucb3qkDBaujV\r\ncpsgUzMpdmTLuCqkJCLRDsYb2qvgJhWo1SagxU9539x1vXrO0h8q9Ls+6HZz\r\nLr7j/GQvi9wc0OqnRAWzhfIYPYoWuhsPSJfaeTfQShoN/QfKivGmrsspRGIM\r\nyuN9rPQ4xbjYqKkPXQTQv2K2mwlZRbMilcbVtY5ieJiLtOBBrFOnjIVHgLfS\r\n2Rqf31KbrcPJUopnan82RIcVYxUYueEZiA2xG3u9iO04kz7yJLmkb5V+XsBO\r\nbtOp1h+c+gveAKMUwdV8xsfiPXwd5QlmpDiqTw+CtAebDNFn9xWva9MUyCh7\r\nTjddpJBMPPN32oVrtEKvjqn58IelwCxQf9/oWl+wBMy15p+kLUhrm2RSe1f7\r\nV8MMv9tS7aDkH1zlgUKpKSuOf7YUwx6xDHIS0SZCIaTuRgse0gsj0kttM92G\r\nU4Oear7tqikHRkKZnAPtPjrT2sLueHrp4qycNVOgPzt6Xhowqc7Uqc3rVUcO\r\nqhPOWxXopKM+sszAi/nt1Lbw11XRCvL3sL+dh9RQHICM8PnyV7TmTY7FElwp\r\nUnnQwevKSCY8d8aaAvZ7sUdHCUQmDtW3BXc=\r\n=Gcyc\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCGsx2WICwldhc/O+MUROb5EDTdnYU5L/aY6aBtBFidQAIgRcrVQHfCKQhWsmsmAB77TyeOSsQzFDrc6P0/gy5ILaI="}]},"_npmUser":{"name":"bentoprojectbot","email":"bentobot@amp.dev"},"directories":{},"maintainers":[{"name":"bentoprojectbot","email":"bentobot@amp.dev"},{"name":"kristoferbaxter","email":"kbax@me.com"},{"name":"esth","email":"esther@amp.dev"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/date-display_1.2203231914.0_1648110191676_0.34617981985435065"},"_hasShrinkwrap":false},"1.2203101844.0":{"name":"@bentoproject/date-display","version":"1.2203101844.0","description":"Displays time data that you can render in your page.","author":{"name":"Bento Authors"},"license":"Apache-2.0","main":"./dist/web-component.js","module":"./dist/web-component.module.js","exports":{".":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./web-component":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./preact":{"import":"./dist/component-preact.module.js","require":"./dist/component-preact.js"},"./react":{"import":"./dist/component-react.module.js","require":"./dist/component-react.js"},"./web-component.css":"./dist/web-component.css"},"repository":{"type":"git","url":"git+https://github.com/ampproject/amphtml.git","directory":"extensions/amp-date-display/1.0"},"homepage":"https://github.com/ampproject/amphtml/tree/main/extensions/amp-date-display/1.0","peerDependencies":{"preact":"^10.2.1","react":"^17.0.0"},"dependencies":{"@bentoproject/core":"0.2203101844.0"},"gitHead":"9bf7cbdf0dbb4de2bc6b81fe042e52c990576b61","bugs":{"url":"https://github.com/ampproject/amphtml/issues"},"_id":"@bentoproject/date-display@1.2203101844.0","_nodeVersion":"16.14.0","_npmVersion":"8.3.1","dist":{"integrity":"sha512-jWa4WcCmKLIhVDStnrwEmudU2SRjdanWDGXjaP5Z74sj7K45n75AzPrmriVk1O33H87tCOwBBSIVATmQcyekPA==","shasum":"b68ae69163b75d3e35f150780293408ad3ba78ea","tarball":"https://registry.npmjs.org/@bentoproject/date-display/-/date-display-1.2203101844.0.tgz","fileCount":28,"unpackedSize":792791,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiPM/zACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrW+g/+JCzHX6g+MYmW5UEWTXylE7e+aqyg/pru8T55gO0neGNr+qPA\r\nzwovgSehbwElld9LLzAQ5bQgbbMgmmd89Z+4v9OkN/ktFZ5swtnfJuhxN/0Q\r\ngmq9MWMwK8LKMDaodUJSTo/avCPLqSkwjEagaRued4KXtO7NznF8pPRDUE3h\r\nJkUHp4hsRJTjrCSQDtHVr4Mv9NhshOnXRESfjUy0dFdvRkkM9URzxxIz5POM\r\nSuP2IKENXGOD5mqCGJcQobQuty56Eps8nxoQDTxN5iV9gT4uopbGx8sl+rMh\r\nxR6R57C2IBLHtfQsoHk1+oEkF7ubL34C0UsTOKXGoc0mcKgbEV79RxPQ7R07\r\nTFG75zNCQgEvy39K4m/FpbbheuuTUqAA8Nz8mBPoqbX/kI3d6n+JK+OBQiU7\r\nlRj8wQIUpBmh7bP5iCYNrYd/ru/HD+J3w5qDWcKv6T75DrQmbVXrUYMgn9O8\r\nPrU6CGEAZmL0EJJH7/0+W09AYaSXVyfXnOCRLsGCPcsAtJI4TC2VYbcLV6sy\r\nH1dAGNwjcVjDeKjLuLLyZnIUABzT9mNiTAMx4nZxOoGewOHOyTpwbLjuwhKh\r\nev2aHKlPGlLtga0Ctu1bqhAgpega4wOcdoSwjm17uINc46HPv7O0MREWtfCB\r\nAz85e+8QFSMIntp917fHEJtbw+CUpGQQ3iQ=\r\n=DArm\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDXAZAl7sxT3xIGsFd8fXqPGValTu6VI6Hk+qDsSIGBxQIhAM5+dRV2BrmgI7iD8ojJAYvyIvARCDP0azQLoBt/qcO3"}]},"_npmUser":{"name":"bentoprojectbot","email":"bentobot@amp.dev"},"directories":{},"maintainers":[{"name":"bentoprojectbot","email":"bentobot@amp.dev"},{"name":"kristoferbaxter","email":"kbax@me.com"},{"name":"esth","email":"esther@amp.dev"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/date-display_1.2203101844.0_1648152563268_0.6179396127254613"},"_hasShrinkwrap":false},"1.2203281422.0":{"name":"@bentoproject/date-display","version":"1.2203281422.0","description":"Displays time data that you can render in your page.","author":{"name":"Bento Authors"},"license":"Apache-2.0","main":"./dist/web-component.js","module":"./dist/web-component.module.js","exports":{".":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./web-component":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./preact":{"import":"./dist/component-preact.module.js","require":"./dist/component-preact.js"},"./react":{"import":"./dist/component-react.module.js","require":"./dist/component-react.js"},"./web-component.css":"./dist/web-component.css"},"repository":{"type":"git","url":"git+https://github.com/ampproject/amphtml.git","directory":"extensions/amp-date-display/1.0"},"homepage":"https://github.com/ampproject/amphtml/tree/main/extensions/amp-date-display/1.0","peerDependencies":{"preact":"^10.2.1","react":"^17.0.0"},"dependencies":{"@bentoproject/core":"0.2203281422.0"},"gitHead":"f74833d1e2b0d9176900cb183c4edacc4ae53986","bugs":{"url":"https://github.com/ampproject/amphtml/issues"},"_id":"@bentoproject/date-display@1.2203281422.0","_nodeVersion":"16.14.0","_npmVersion":"8.3.1","dist":{"integrity":"sha512-lLt8ufb2ff0sYcl6ABcdxXUBafFU/t8wI60boKj+Av1fObrUwaHEYI2JrofNyyErdv2+itex7Y8GwRM2RJz3oQ==","shasum":"9e0887a27f65cc141249a23ecfca5f7eb90384a9","tarball":"https://registry.npmjs.org/@bentoproject/date-display/-/date-display-1.2203281422.0.tgz","fileCount":28,"unpackedSize":792791,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiQsMrACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpqWxAAjZFHyVfQ7LckwEkc3/StoQFKFnA+AtERfszISXHP5o5x6jjf\r\nyx0JKEF0Z/fJKnWSjkTKuvXm/19J1uped20zK9tKdGTdqZ023yFonsvedqVF\r\nvwhjLzRS/NihNOqArXEFxF7vqTUvkTo+yaj9nF/y/dRjeOEt8j3cFrHhCIBv\r\n5Mt2s9Tke3a3ZMmvzdK4UDzON7aV4lBSe1M+1MOmvewzU0dzxmA68yrnlBZp\r\nImRE0Lcjq/VUjdKay9EB4VTP7Z6qqCR+KEo09NRXctmtEw6GnkgE9w8t4iFB\r\n8TVFXwp+5tg2uK0ztYSCl8xGTyNkdVMgma/kuwnt0JEOC1/CXoYTstZVxDHA\r\n3TQ3jaOUkhl5wsKR2YFaGLxJwHDnISsTMlZvq9pAazjMN1HT++t0cMLjoxJx\r\n6hb2sC9eEKt6x8WtEqWg0eKsPjiM6aAgByWwUGK2GX+Pmejh6bF8Nfseh1YL\r\nYYKr72ixlr8LEhTTTd2D8TdOYoEkfB4jQwP6NDz8S5BgR50SF9v5OBAbt5FR\r\nYoF3UHzExR/2YViSrtPibHXaVAhB3lGTl0Vu3BGvSqFH41NkZ956vDziJ8R7\r\nMn30NOEs1lPL7xexp0WSUWGbc40PATehm5mxsva9RVhU8q6DpVGBHtxbdtnu\r\nDuOXsN3E1ARfKKbxNlmLxIMDyX+FvIZItsI=\r\n=qCy1\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCSxS3FQr2am6u4vv4E0wUkMhDQWccghpCYz4iZgvBCgwIgW1zxIaP1jRH6F6tgOoU6GxkJrJ1A2lrP9AyHQ08Vin8="}]},"_npmUser":{"name":"bentoprojectbot","email":"bentobot@amp.dev"},"directories":{},"maintainers":[{"name":"bentoprojectbot","email":"bentobot@amp.dev"},{"name":"kristoferbaxter","email":"kbax@me.com"},{"name":"esth","email":"esther@amp.dev"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/date-display_1.2203281422.0_1648542507453_0.8716018339096696"},"_hasShrinkwrap":false},"1.2204121632.0":{"name":"@bentoproject/date-display","version":"1.2204121632.0","description":"Displays time data that you can render in your page.","author":{"name":"Bento Authors"},"license":"Apache-2.0","main":"./dist/web-component.js","module":"./dist/web-component.module.js","exports":{".":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./web-component":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./preact":{"import":"./dist/component-preact.module.js","require":"./dist/component-preact.js"},"./react":{"import":"./dist/component-react.module.js","require":"./dist/component-react.js"},"./web-component.css":"./dist/web-component.css"},"repository":{"type":"git","url":"git+https://github.com/ampproject/amphtml.git","directory":"extensions/amp-date-display/1.0"},"homepage":"https://github.com/ampproject/amphtml/tree/main/extensions/amp-date-display/1.0","peerDependencies":{"preact":"^10.2.1","react":"^17.0.0"},"dependencies":{"@bentoproject/core":"0.2204121632.0"},"readme":"# Bento Date Display\n\nDisplays time data that you can render in your page. By providing specific [attributes](#attributes) in the Bento Date Display tag, the Bento Date Display extension returns a list of time parameters, which you can pass to [an amp-mustache template](../../amp-mustache/amp-mustache.md) for rendering. Refer to the [list below for each returned time parameter](#returned-time-parameters).\n\n## Web Component\n\nYou must include each Bento component's required CSS library to guarantee proper loading and before adding custom styles. Or use the light-weight pre-upgrade styles available inline. See [Layout and style](#layout-and-style).\n\n### Example: Import via npm\n\nInstall via npm:\n\n```sh\nnpm install @bentoproject/bento-date-display\n```\n\n```javascript\nimport {defineElement as defineBentoDateDisplay} from '@bentoproject/bento-date-display';\ndefineBentoDateDisplay();\n```\n\n### Include via `<script>`\n\n```html\n<script type=\"module\" src=\"https://cdn.ampproject.org/bento.mjs\" crossorigin=\"anonymous\"></script>\n<script nomodule src=\"https://cdn.ampproject.org/bento.js\" crossorigin=\"anonymous\"></script>\n<!-- Include bento-mustache.js to use mustache templates with this component -->\n<script async src=\"https://cdn.ampproject.org/v0/bento-mustache.js\"></script>\n<script type=\"module\" src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.mjs\" crossorigin=\"anonymous\"></script>\n<script nomodule src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.js\" crossorigin=\"anonymous\"></script>\n<link rel=\"stylesheet\" href=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.css\" crossorigin=\"anonymous\">\n```\n\n### Example\n\n```html\n<!DOCTYPE html>\n<html>\n  <head>\n    <script\n      type=\"module\"\n      async\n      src=\"https://cdn.ampproject.org/bento.mjs\"\n    ></script>\n    <script nomodule src=\"https://cdn.ampproject.org/bento.js\"></script>\n    <script async src=\"https://cdn.ampproject.org/v0/bento-mustache.js\"></script>\n    <script\n      type=\"module\"\n      async\n      src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.mjs\"\n    ></script>\n    <script\n      nomodule\n      async\n      src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.js\"\n    ></script>\n    <link\n      rel=\"stylesheet\"\n      type=\"text/css\"\n      href=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.css\"\n    />\n  </head>\n  <body>\n    <bento-date-display\n      datetime=\"2021-09-09T16:02:08.494Z\"\n      displayIn=\"utc\"\n      locale=\"en-GB\"\n    >\n      <template>\n        <div>ISO: {{iso}}; locale: {{localeString}}</div>\n      </template>\n    </bento-date-display>\n  </body>\n</html>\n```\n\n### Interactivity and API usage\n\nThe Bento Date Display component does not have an imperative API. However, the Bento Date Display Web Component will render a mustache-template, provided by the consumer in a `<template>` tag with `type=\"amp-mustache\"`. This template may interpolate date-related parameters. See the [Returned Time Parameters section](#returned-time-parameters) for a full list of all the available parameters.\n\n### Layout and style\n\nEach Bento component has a small CSS library you must include to guarantee proper loading without [content shifts](https://web.dev/cls/). Because of order-based specificity, you must manually ensure that stylesheets are included before any custom styles.\n\n```html\n<link rel=\"stylesheet\" type=\"text/css\" href=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.css\">\n```\n\nAlternatively, you may also make the light-weight pre-upgrade styles available inline:\n\n```html\n<style data-bento-boilerplate>\n  bento-date-display {\n    display: block;\n    overflow: hidden;\n    position: relative;\n  }\n</style>\n```\n\n### Attributes\n\n#### `datetime`\n\nThe `datetime` attribute specifies the date and time in a standard ISO 8601 date\nstring (e.g. 2017-08-02T15:05:05.000Z) or the string `now`. If set to `now`,\n`bento-date-display` will use the time the page loaded to render its template.\n\n#### `timestamp-ms`\n\nThe `timestamp-ms` attribute specifies the date and time using the number of\nmilliseconds since 1970-01-01T0:00:00.000Z\n\n#### `timestamp-seconds`\n\nThe `timestamp-seconds` attribute specifies the date and time using the number\nof seconds since 1970-01-01T0:00:00.000Z\n\n#### `locale` (optional)\n\nAn internationalization language string for each timer unit. The default value\nis `en` (for English). This attribute supports all values that are supported by\nthe user's browser.\n\n#### `display-in` (optional)\n\nIf set to the value `utc`, the `display-in` attribute will convert the given\ndate to UTC.\n\n#### `offset-seconds` (optional)\n\nThe `offset-seconds` attribute specifies an integer number of seconds to shift\nthe given date.\n\n#### `data-options-\\*` (optional)\n\nThe `data-options-*` supports all the options under [Intl.DateTimeFormat.options](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/DateTimeFormat#parameters)\nparameter that specifies the formatting style to use for `localeString` format.\nValid attributes include: `data-options-date-style`, `data-options-time-style`, etc.\n\nNote that if `display-in` attrubute is set to `utc`, the value of\n`data-options-time-zone` will automatically be converted to `UTC`.\n\n### Styling\n\nYou may use the `bento-date-display` element selector to style the Bento Date Display component freely.\n\n---\n\n## Preact/React Component\n\n### Import via npm\n\n```sh\nnpm install @bentoproject/date-display\n```\n\n```javascript\nimport React from 'react';\nimport {BentoDateDisplay} from '@bentoproject/date-display/react';\nimport '@bentoproject/date-display/styles.css';\n\nfunction App() {\n  return (\n    <BentoDateDisplay\n      datetime={dateTime}\n      displayIn={displayIn}\n      locale={locale}\n      render={(date) => (\n        <div>{`ISO: ${date.iso}; locale: ${date.localeString}`}</div>\n      )}\n    />\n  );\n}\n```\n\n### Interactivity and API usage\n\nThe Bento Date Display component does not have an imperative API. However, the Bento Date Display Preact/React component does accept a `render` prop that renders the consumer's template. This `render` prop should be a function which the Bento Date Display Preact/React component can use to render its template. The `render` callback will be provided a variety of date-related parameters for consumers to interpolate in the rendered template. See the [`render` prop section](#render) for more information.\n\n### Layout and style\n\nThe Bento Date Display Preact/React component allows consumers to render their own templates. These templates may use inline styles, `<style>` tags, Preact/React components that import their own stylesheets.\n\n### Props\n\n#### `datetime`\n\nRequired prop. Denotes the date and time as a Date, String, or Number. If String, must be a standard ISO 8601 date string (e.g. 2017-08-02T15:05:05.000Z) or the string `now`. If set to `now`, it will use the time the page loaded to render its template. If Number, must be a POSIX epoch value in milliseconds.\n\n#### `displayIn`\n\nOptional prop that can be either `\"utc\"` or `\"local\"` and defaults to `\"local\"`. This prop indicates what timezone to display the date in. If set to the value `\"utc\"`, the component will convert the given date to UTC.\n\n#### `locale`\n\nAn internationalization language string for each timer unit. The default value is `en` (for English). This prop supports all values that are supported by the user's browser.\n\n#### `localeOptions`\n\nThe `localeOptions` object supports all the options under [Intl.DateTimeFormat.options](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/DateTimeFormat#parameters) parameter that specifies the formatting style to use for `localeString` format.\n\nNote that if the `displayIn` prop is set to `utc`, the value of `localeOptions.timeZone` will automatically be converted to `UTC`.\n\n#### `render`\n\nOptional callback that should render a template. The callback will be provided an object with properties/values related to the date expressed in `datetime`.\n\nBy default, the Bento Date Display component will display the [`localeString` form of the Date](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/toLocaleString) for the given locale and localeOption. See the [Returned Time Parameters section](#returned-time-parameters) for more details on how each property will be displayed.\n\n```typescript\n(dateParams: DateParams) => JSXInternal.Element\ninterface DateParams {\n  day: number;\n  dayName: string;\n  dayNameShort: string;\n  dayPeriod: string;\n  dayTwoDigit: string;\n  hour: number;\n  hour12: number;\n  hour12TwoDigit: string;\n  hourTwoDigit: string;\n  iso: string;\n  localeString: string;\n  minute: number;\n  minuteTwoDigit: string;\n  month: number;\n  monthName: string;\n  monthNameShort: string;\n  monthTwoDigit: string;\n  second: number;\n  secondTwoDigit: string;\n  timeZoneName: string;\n  timeZoneNameShort: string;\n  year: number;\n  yearTwoDi: string;\n}\n```\n\n### Returned Time Parameters\n\nThis table lists the format you can specify in your Mustache template:\n\n| Format            | Meaning                                                       |\n| ----------------- | ------------------------------------------------------------- |\n| day               | 1, 2, ...12, 13, etc.                                         |\n| dayName           | string,                                                       |\n| dayNameShort      | string,                                                       |\n| dayPeriod         | string,                                                       |\n| dayTwoDigit       | 01, 02, 03, ..., 12, 13, etc.                                 |\n| hour              | 0, 1, 2, 3, ..., 12, 13, ..., 22, 23                          |\n| hour12            | 1, 2, 3, ..., 12, 1, 2, ..., 11, 12                           |\n| hour12TwoDigit    | 01, 02, ..., 12, 01, 02, ..., 11, 12                          |\n| hourTwoDigit      | 00, 01, 02, ..., 12, 13, ..., 22, 23                          |\n| iso               | A standard ISO8601 date string e.g. 2019-01-23T15:31:21.213Z, |\n| localeString      | A string with a language sensitive representation.            |\n| minute            | 0, 1, 2, ..., 58, 59                                          |\n| minuteTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| month             | 1, 2, 3, ..., 12                                              |\n| monthName         | Internationalized month name string.                          |\n| monthNameShort    | Internationalized abbreviated month name string.,             |\n| monthTwoDigit     | 01, 02, ..., 11, 12                                           |\n| second            | 0, 1, 2, ..., 58, 59                                          |\n| secondTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| timeZoneName      | Internationalized timezone, like `Pacific Daylight Time`      |\n| timeZoneNameShort | Internationalized timezone, abbreviated, like `PST`           |\n| year              | 0, 1, 2, ..., 1999, 2000, 2001, etc.                          |\n| yearTwoDigit      | 00, 01, 02, ..., 17, 18, 19, ..., 98, 99                      |\n","readmeFilename":"README.md","gitHead":"dce11ee1542a2d10e47b8e9875dae137f4cc1b0a","bugs":{"url":"https://github.com/ampproject/amphtml/issues"},"_id":"@bentoproject/date-display@1.2204121632.0","_nodeVersion":"16.14.2","_npmVersion":"8.5.0","dist":{"integrity":"sha512-GcQlX4nQGQ+o9qJY6PBxY2LL3oONKSmRbcBRIrpgpNM6rYvDEac9+drz6pSK+tnrT3gIGrDMz7w7NRkHcPJccA==","shasum":"0760eadf7392f756adf4cb815af25b443579ab74","tarball":"https://registry.npmjs.org/@bentoproject/date-display/-/date-display-1.2204121632.0.tgz","fileCount":28,"unpackedSize":671317,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDsE2BZ9Bsr/AoKgUwKOQXKbsKygoscOGvrHFn/s1w5kwIhALHQ4iegpP4Nemtncm0Zu0gq5NozHxg/tmfDCHgF15Dz"}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiVcG9ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmq7dBAAntApEQkmRE2hsZ2nQ0AwgarW8IJ3WduFezukWA9p/Svi2rht\r\n6iVOzzcHINxIeAJAhIuHHO6lofZPwcoslNF4PM17ja+sVv1brHNioJKmZWJb\r\nc1wIT1Ahi4lKbluq1cqxurLF3PiQbiYutBpb9dkJfU3DpYDCP4kuUDQEo0pi\r\nmIZjZ7lKakEjHjNzCewjQ/Gf9zdYmHniv4ljQZFHIo3+Mq5Q3eNsI/n1wYF0\r\nhvyog6cAXrtiqrEnlaSn6YAkneajfrvcZwprujTmHjDADjUd1NoLJoykxH/J\r\nhkayrXiwZF6XeD0x+wPmnmVs+CbTP+y/8pIMemi3iPgH2R7+vNoVVPtGtSEE\r\nmvtZqY2TyBcfnsjnEfP25w2VzymQrX/IymFyX/NSJygXgBLeqRo9jzPe24T2\r\nyoqKQaCQt3S2tdfJSZ2k03Ckso0XTWO7KG7vOVFB2X09f4Hj7TIJ3rCCqTjR\r\nYu0AUQNC/2UWxQSlvpzkz/u33DiB89/GKqoKbWZp42cF497haJc9wYUfH6o7\r\nV13hgzaxY1ySivneWsO5+g8QpiztZfuDvU/RcaR22Wmv0c6xw8WyDHK0NCfg\r\nUouQ3mSHO+nMEhPiNXExQBtVo5tWcl9egfya7duSG5bsp5JMRN2tfmI2S+Cb\r\nPMiZe6ISYPpC0CdG2Uatn2wJVsl6Yvu2xrQ=\r\n=TExr\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"bentoprojectbot","email":"bentobot@amp.dev"},"directories":{},"maintainers":[{"name":"bentoprojectbot","email":"bentobot@amp.dev"},{"name":"kristoferbaxter","email":"kbax@me.com"},{"name":"esth","email":"esther@amp.dev"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/date-display_1.2204121632.0_1649787325086_0.5355434231723195"},"_hasShrinkwrap":false},"1.2204122000.0":{"name":"@bentoproject/date-display","version":"1.2204122000.0","description":"Displays time data that you can render in your page.","author":{"name":"Bento Authors"},"license":"Apache-2.0","main":"./dist/web-component.js","module":"./dist/web-component.module.js","exports":{".":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./web-component":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./preact":{"import":"./dist/component-preact.module.js","require":"./dist/component-preact.js"},"./react":{"import":"./dist/component-react.module.js","require":"./dist/component-react.js"},"./web-component.css":"./dist/web-component.css"},"repository":{"type":"git","url":"git+https://github.com/ampproject/amphtml.git","directory":"extensions/amp-date-display/1.0"},"homepage":"https://github.com/ampproject/amphtml/tree/main/extensions/amp-date-display/1.0","peerDependencies":{"preact":"^10.2.1","react":"^17.0.0"},"dependencies":{"@bentoproject/core":"0.2204122000.0"},"readme":"# Bento Date Display\n\nDisplays time data that you can render in your page. By providing specific [attributes](#attributes) in the Bento Date Display tag, the Bento Date Display extension returns a list of time parameters, which you can pass to [an amp-mustache template](../../amp-mustache/amp-mustache.md) for rendering. Refer to the [list below for each returned time parameter](#returned-time-parameters).\n\n## Web Component\n\nYou must include each Bento component's required CSS library to guarantee proper loading and before adding custom styles. Or use the light-weight pre-upgrade styles available inline. See [Layout and style](#layout-and-style).\n\n### Example: Import via npm\n\nInstall via npm:\n\n```sh\nnpm install @bentoproject/bento-date-display\n```\n\n```javascript\nimport {defineElement as defineBentoDateDisplay} from '@bentoproject/bento-date-display';\ndefineBentoDateDisplay();\n```\n\n### Include via `<script>`\n\n```html\n<script type=\"module\" src=\"https://cdn.ampproject.org/bento.mjs\" crossorigin=\"anonymous\"></script>\n<script nomodule src=\"https://cdn.ampproject.org/bento.js\" crossorigin=\"anonymous\"></script>\n<!-- Include bento-mustache.js to use mustache templates with this component -->\n<script async src=\"https://cdn.ampproject.org/v0/bento-mustache.js\"></script>\n<script type=\"module\" src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.mjs\" crossorigin=\"anonymous\"></script>\n<script nomodule src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.js\" crossorigin=\"anonymous\"></script>\n<link rel=\"stylesheet\" href=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.css\" crossorigin=\"anonymous\">\n```\n\n### Example\n\n```html\n<!DOCTYPE html>\n<html>\n  <head>\n    <script\n      type=\"module\"\n      async\n      src=\"https://cdn.ampproject.org/bento.mjs\"\n    ></script>\n    <script nomodule src=\"https://cdn.ampproject.org/bento.js\"></script>\n    <script async src=\"https://cdn.ampproject.org/v0/bento-mustache.js\"></script>\n    <script\n      type=\"module\"\n      async\n      src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.mjs\"\n    ></script>\n    <script\n      nomodule\n      async\n      src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.js\"\n    ></script>\n    <link\n      rel=\"stylesheet\"\n      type=\"text/css\"\n      href=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.css\"\n    />\n  </head>\n  <body>\n    <bento-date-display\n      datetime=\"2021-09-09T16:02:08.494Z\"\n      displayIn=\"utc\"\n      locale=\"en-GB\"\n    >\n      <template>\n        <div>ISO: {{iso}}; locale: {{localeString}}</div>\n      </template>\n    </bento-date-display>\n  </body>\n</html>\n```\n\n### Interactivity and API usage\n\nThe Bento Date Display component does not have an imperative API. However, the Bento Date Display Web Component will render a mustache-template, provided by the consumer in a `<template>` tag with `type=\"amp-mustache\"`. This template may interpolate date-related parameters. See the [Returned Time Parameters section](#returned-time-parameters) for a full list of all the available parameters.\n\n### Layout and style\n\nEach Bento component has a small CSS library you must include to guarantee proper loading without [content shifts](https://web.dev/cls/). Because of order-based specificity, you must manually ensure that stylesheets are included before any custom styles.\n\n```html\n<link rel=\"stylesheet\" type=\"text/css\" href=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.css\">\n```\n\nAlternatively, you may also make the light-weight pre-upgrade styles available inline:\n\n```html\n<style data-bento-boilerplate>\n  bento-date-display {\n    display: block;\n    overflow: hidden;\n    position: relative;\n  }\n</style>\n```\n\n### Attributes\n\n#### `datetime`\n\nThe `datetime` attribute specifies the date and time in a standard ISO 8601 date\nstring (e.g. 2017-08-02T15:05:05.000Z) or the string `now`. If set to `now`,\n`bento-date-display` will use the time the page loaded to render its template.\n\n#### `timestamp-ms`\n\nThe `timestamp-ms` attribute specifies the date and time using the number of\nmilliseconds since 1970-01-01T0:00:00.000Z\n\n#### `timestamp-seconds`\n\nThe `timestamp-seconds` attribute specifies the date and time using the number\nof seconds since 1970-01-01T0:00:00.000Z\n\n#### `locale` (optional)\n\nAn internationalization language string for each timer unit. The default value\nis `en` (for English). This attribute supports all values that are supported by\nthe user's browser.\n\n#### `display-in` (optional)\n\nIf set to the value `utc`, the `display-in` attribute will convert the given\ndate to UTC.\n\n#### `offset-seconds` (optional)\n\nThe `offset-seconds` attribute specifies an integer number of seconds to shift\nthe given date.\n\n#### `data-options-\\*` (optional)\n\nThe `data-options-*` supports all the options under [Intl.DateTimeFormat.options](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/DateTimeFormat#parameters)\nparameter that specifies the formatting style to use for `localeString` format.\nValid attributes include: `data-options-date-style`, `data-options-time-style`, etc.\n\nNote that if `display-in` attrubute is set to `utc`, the value of\n`data-options-time-zone` will automatically be converted to `UTC`.\n\n### Styling\n\nYou may use the `bento-date-display` element selector to style the Bento Date Display component freely.\n\n---\n\n## Preact/React Component\n\n### Import via npm\n\n```sh\nnpm install @bentoproject/date-display\n```\n\n```javascript\nimport React from 'react';\nimport {BentoDateDisplay} from '@bentoproject/date-display/react';\nimport '@bentoproject/date-display/styles.css';\n\nfunction App() {\n  return (\n    <BentoDateDisplay\n      datetime={dateTime}\n      displayIn={displayIn}\n      locale={locale}\n      render={(date) => (\n        <div>{`ISO: ${date.iso}; locale: ${date.localeString}`}</div>\n      )}\n    />\n  );\n}\n```\n\n### Interactivity and API usage\n\nThe Bento Date Display component does not have an imperative API. However, the Bento Date Display Preact/React component does accept a `render` prop that renders the consumer's template. This `render` prop should be a function which the Bento Date Display Preact/React component can use to render its template. The `render` callback will be provided a variety of date-related parameters for consumers to interpolate in the rendered template. See the [`render` prop section](#render) for more information.\n\n### Layout and style\n\nThe Bento Date Display Preact/React component allows consumers to render their own templates. These templates may use inline styles, `<style>` tags, Preact/React components that import their own stylesheets.\n\n### Props\n\n#### `datetime`\n\nRequired prop. Denotes the date and time as a Date, String, or Number. If String, must be a standard ISO 8601 date string (e.g. 2017-08-02T15:05:05.000Z) or the string `now`. If set to `now`, it will use the time the page loaded to render its template. If Number, must be a POSIX epoch value in milliseconds.\n\n#### `displayIn`\n\nOptional prop that can be either `\"utc\"` or `\"local\"` and defaults to `\"local\"`. This prop indicates what timezone to display the date in. If set to the value `\"utc\"`, the component will convert the given date to UTC.\n\n#### `locale`\n\nAn internationalization language string for each timer unit. The default value is `en` (for English). This prop supports all values that are supported by the user's browser.\n\n#### `localeOptions`\n\nThe `localeOptions` object supports all the options under [Intl.DateTimeFormat.options](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/DateTimeFormat#parameters) parameter that specifies the formatting style to use for `localeString` format.\n\nNote that if the `displayIn` prop is set to `utc`, the value of `localeOptions.timeZone` will automatically be converted to `UTC`.\n\n#### `render`\n\nOptional callback that should render a template. The callback will be provided an object with properties/values related to the date expressed in `datetime`.\n\nBy default, the Bento Date Display component will display the [`localeString` form of the Date](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/toLocaleString) for the given locale and localeOption. See the [Returned Time Parameters section](#returned-time-parameters) for more details on how each property will be displayed.\n\n```typescript\n(dateParams: DateParams) => JSXInternal.Element\ninterface DateParams {\n  day: number;\n  dayName: string;\n  dayNameShort: string;\n  dayPeriod: string;\n  dayTwoDigit: string;\n  hour: number;\n  hour12: number;\n  hour12TwoDigit: string;\n  hourTwoDigit: string;\n  iso: string;\n  localeString: string;\n  minute: number;\n  minuteTwoDigit: string;\n  month: number;\n  monthName: string;\n  monthNameShort: string;\n  monthTwoDigit: string;\n  second: number;\n  secondTwoDigit: string;\n  timeZoneName: string;\n  timeZoneNameShort: string;\n  year: number;\n  yearTwoDi: string;\n}\n```\n\n### Returned Time Parameters\n\nThis table lists the format you can specify in your Mustache template:\n\n| Format            | Meaning                                                       |\n| ----------------- | ------------------------------------------------------------- |\n| day               | 1, 2, ...12, 13, etc.                                         |\n| dayName           | string,                                                       |\n| dayNameShort      | string,                                                       |\n| dayPeriod         | string,                                                       |\n| dayTwoDigit       | 01, 02, 03, ..., 12, 13, etc.                                 |\n| hour              | 0, 1, 2, 3, ..., 12, 13, ..., 22, 23                          |\n| hour12            | 1, 2, 3, ..., 12, 1, 2, ..., 11, 12                           |\n| hour12TwoDigit    | 01, 02, ..., 12, 01, 02, ..., 11, 12                          |\n| hourTwoDigit      | 00, 01, 02, ..., 12, 13, ..., 22, 23                          |\n| iso               | A standard ISO8601 date string e.g. 2019-01-23T15:31:21.213Z, |\n| localeString      | A string with a language sensitive representation.            |\n| minute            | 0, 1, 2, ..., 58, 59                                          |\n| minuteTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| month             | 1, 2, 3, ..., 12                                              |\n| monthName         | Internationalized month name string.                          |\n| monthNameShort    | Internationalized abbreviated month name string.,             |\n| monthTwoDigit     | 01, 02, ..., 11, 12                                           |\n| second            | 0, 1, 2, ..., 58, 59                                          |\n| secondTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| timeZoneName      | Internationalized timezone, like `Pacific Daylight Time`      |\n| timeZoneNameShort | Internationalized timezone, abbreviated, like `PST`           |\n| year              | 0, 1, 2, ..., 1999, 2000, 2001, etc.                          |\n| yearTwoDigit      | 00, 01, 02, ..., 17, 18, 19, ..., 98, 99                      |\n","readmeFilename":"README.md","gitHead":"9d10200b5a9784c35ca9fa16b1a4b3078aab3180","bugs":{"url":"https://github.com/ampproject/amphtml/issues"},"_id":"@bentoproject/date-display@1.2204122000.0","_nodeVersion":"16.14.2","_npmVersion":"8.5.0","dist":{"integrity":"sha512-5zwOdx0aUFWEcF2hXnn7RgJOMxkp6St9x63BWWapUEnn77fXjW+Irt2b6uLv7s5QCnB40VK30S6BB/JCv8ZVpQ==","shasum":"7c35043b723cf16219f9df962f970660bf5a8701","tarball":"https://registry.npmjs.org/@bentoproject/date-display/-/date-display-1.2204122000.0.tgz","fileCount":28,"unpackedSize":671133,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCID62DuS1MY3DpJ/3qJh6H3+1IcdvmDrDgC4Xk0qUcXSjAiAWFiMRQPEWkKw7yyiURVRHxPwD1ywX72Q5GOe62+OldA=="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiVooaACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmortg//bykPeuJ4jqVHVIt3IkqCdSbAhvlWtkxffALquuog8SuofL3S\r\n5R4RjpEQyLC4y1Dj+o/1ylCRS1iamI2not+JsqJ9XdaA2Invf2SH040vfkZf\r\nIdEtaWFeO9kS2oBhZQtzQ0CSc1BZRLhOATwYPEA+bDE5Zxc9k3MNW+1YmlxN\r\nlp7fi8MqxyoLP47/iyUMhQyKtAL3f6wvA43GncwU/PHK9AXdfj2mYPxxqtRR\r\nJPYzVPMrtgvz7gnsvoM8WJhQRi7/P8O4iM8lzlfRvtC7HioRlVM73DeAdpts\r\nYKlQex7R147ncvfOpOyb8xnVRn8Y92NDzQmTm0HZxH4lwR/MmBLiHbFNxty8\r\n8+WfsJX+7fd6EAAqh2kmX38f47ke2jGe7+vgI0HrT1WrrjNxUq2m4x6hcuRK\r\nC1YVLxj6aflcxIYayuRQyM2S3ah65r4V8+gQgAqKq/KqwniS2SnQcMUWE3Fa\r\nIe+o1PJ7SUB8rtSwMp8K1jYpg4851+SRRCdZH3mR8xCL2z03zWPWHNnARJl7\r\n52pEG/0Ze6mGxdQdpjMcg+qgbrIhkY01aYABs9yaqbGmtjXgjEujmcgqj4gd\r\nYu5Cn11FFcXqm+zVhFEtLM9lmbC1xb7ULFPDgb1nFv1UZVCpu0v+OFV+Lt0x\r\nHlZ6nNTR1ITIESdSFQnUX2tumg3WiL20NLw=\r\n=QhYf\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"bentoprojectbot","email":"bentobot@amp.dev"},"directories":{},"maintainers":[{"name":"bentoprojectbot","email":"bentobot@amp.dev"},{"name":"kristoferbaxter","email":"kbax@me.com"},{"name":"esth","email":"esther@amp.dev"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/date-display_1.2204122000.0_1649838617821_0.24256627889422422"},"_hasShrinkwrap":false},"1.2204132005.0":{"name":"@bentoproject/date-display","version":"1.2204132005.0","description":"Displays time data that you can render in your page.","author":{"name":"Bento Authors"},"license":"Apache-2.0","main":"./dist/web-component.js","module":"./dist/web-component.module.js","exports":{".":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./web-component":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./preact":{"import":"./dist/component-preact.module.js","require":"./dist/component-preact.js"},"./react":{"import":"./dist/component-react.module.js","require":"./dist/component-react.js"},"./web-component.css":"./dist/web-component.css"},"repository":{"type":"git","url":"git+https://github.com/ampproject/amphtml.git","directory":"extensions/amp-date-display/1.0"},"homepage":"https://github.com/ampproject/amphtml/tree/main/extensions/amp-date-display/1.0","peerDependencies":{"preact":"^10.2.1","react":"^17.0.0"},"dependencies":{"@bentoproject/core":"0.2204132005.0"},"readme":"# Bento Date Display\n\nDisplays time data that you can render in your page. By providing specific [attributes](#attributes) in the Bento Date Display tag, the Bento Date Display extension returns a list of time parameters, which you can pass to [an amp-mustache template](../../amp-mustache/amp-mustache.md) for rendering. Refer to the [list below for each returned time parameter](#returned-time-parameters).\n\n## Web Component\n\nYou must include each Bento component's required CSS library to guarantee proper loading and before adding custom styles. Or use the light-weight pre-upgrade styles available inline. See [Layout and style](#layout-and-style).\n\n### Example: Import via npm\n\nInstall via npm:\n\n```sh\nnpm install @bentoproject/bento-date-display\n```\n\n```javascript\nimport {defineElement as defineBentoDateDisplay} from '@bentoproject/bento-date-display';\ndefineBentoDateDisplay();\n```\n\n### Include via `<script>`\n\n```html\n<script type=\"module\" src=\"https://cdn.ampproject.org/bento.mjs\" crossorigin=\"anonymous\"></script>\n<script nomodule src=\"https://cdn.ampproject.org/bento.js\" crossorigin=\"anonymous\"></script>\n<!-- Include bento-mustache.js to use mustache templates with this component -->\n<script async src=\"https://cdn.ampproject.org/v0/bento-mustache.js\"></script>\n<script type=\"module\" src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.mjs\" crossorigin=\"anonymous\"></script>\n<script nomodule src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.js\" crossorigin=\"anonymous\"></script>\n<link rel=\"stylesheet\" href=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.css\" crossorigin=\"anonymous\">\n```\n\n### Example\n\n```html\n<!DOCTYPE html>\n<html>\n  <head>\n    <script\n      type=\"module\"\n      async\n      src=\"https://cdn.ampproject.org/bento.mjs\"\n    ></script>\n    <script nomodule src=\"https://cdn.ampproject.org/bento.js\"></script>\n    <script async src=\"https://cdn.ampproject.org/v0/bento-mustache.js\"></script>\n    <script\n      type=\"module\"\n      async\n      src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.mjs\"\n    ></script>\n    <script\n      nomodule\n      async\n      src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.js\"\n    ></script>\n    <link\n      rel=\"stylesheet\"\n      type=\"text/css\"\n      href=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.css\"\n    />\n  </head>\n  <body>\n    <bento-date-display\n      datetime=\"2021-09-09T16:02:08.494Z\"\n      displayIn=\"utc\"\n      locale=\"en-GB\"\n    >\n      <template>\n        <div>ISO: {{iso}}; locale: {{localeString}}</div>\n      </template>\n    </bento-date-display>\n  </body>\n</html>\n```\n\n### Interactivity and API usage\n\nThe Bento Date Display component does not have an imperative API. However, the Bento Date Display Web Component will render a mustache-template, provided by the consumer in a `<template>` tag with `type=\"amp-mustache\"`. This template may interpolate date-related parameters. See the [Returned Time Parameters section](#returned-time-parameters) for a full list of all the available parameters.\n\n### Layout and style\n\nEach Bento component has a small CSS library you must include to guarantee proper loading without [content shifts](https://web.dev/cls/). Because of order-based specificity, you must manually ensure that stylesheets are included before any custom styles.\n\n```html\n<link rel=\"stylesheet\" type=\"text/css\" href=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.css\">\n```\n\nAlternatively, you may also make the light-weight pre-upgrade styles available inline:\n\n```html\n<style data-bento-boilerplate>\n  bento-date-display {\n    display: block;\n    overflow: hidden;\n    position: relative;\n  }\n</style>\n```\n\n### Attributes\n\n#### `datetime`\n\nThe `datetime` attribute specifies the date and time in a standard ISO 8601 date\nstring (e.g. 2017-08-02T15:05:05.000Z) or the string `now`. If set to `now`,\n`bento-date-display` will use the time the page loaded to render its template.\n\n#### `timestamp-ms`\n\nThe `timestamp-ms` attribute specifies the date and time using the number of\nmilliseconds since 1970-01-01T0:00:00.000Z\n\n#### `timestamp-seconds`\n\nThe `timestamp-seconds` attribute specifies the date and time using the number\nof seconds since 1970-01-01T0:00:00.000Z\n\n#### `locale` (optional)\n\nAn internationalization language string for each timer unit. The default value\nis `en` (for English). This attribute supports all values that are supported by\nthe user's browser.\n\n#### `display-in` (optional)\n\nIf set to the value `utc`, the `display-in` attribute will convert the given\ndate to UTC.\n\n#### `offset-seconds` (optional)\n\nThe `offset-seconds` attribute specifies an integer number of seconds to shift\nthe given date.\n\n#### `data-options-\\*` (optional)\n\nThe `data-options-*` supports all the options under [Intl.DateTimeFormat.options](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/DateTimeFormat#parameters)\nparameter that specifies the formatting style to use for `localeString` format.\nValid attributes include: `data-options-date-style`, `data-options-time-style`, etc.\n\nNote that if `display-in` attrubute is set to `utc`, the value of\n`data-options-time-zone` will automatically be converted to `UTC`.\n\n### Styling\n\nYou may use the `bento-date-display` element selector to style the Bento Date Display component freely.\n\n---\n\n## Preact/React Component\n\n### Import via npm\n\n```sh\nnpm install @bentoproject/date-display\n```\n\n```javascript\nimport React from 'react';\nimport {BentoDateDisplay} from '@bentoproject/date-display/react';\nimport '@bentoproject/date-display/styles.css';\n\nfunction App() {\n  return (\n    <BentoDateDisplay\n      datetime={dateTime}\n      displayIn={displayIn}\n      locale={locale}\n      render={(date) => (\n        <div>{`ISO: ${date.iso}; locale: ${date.localeString}`}</div>\n      )}\n    />\n  );\n}\n```\n\n### Interactivity and API usage\n\nThe Bento Date Display component does not have an imperative API. However, the Bento Date Display Preact/React component does accept a `render` prop that renders the consumer's template. This `render` prop should be a function which the Bento Date Display Preact/React component can use to render its template. The `render` callback will be provided a variety of date-related parameters for consumers to interpolate in the rendered template. See the [`render` prop section](#render) for more information.\n\n### Layout and style\n\nThe Bento Date Display Preact/React component allows consumers to render their own templates. These templates may use inline styles, `<style>` tags, Preact/React components that import their own stylesheets.\n\n### Props\n\n#### `datetime`\n\nRequired prop. Denotes the date and time as a Date, String, or Number. If String, must be a standard ISO 8601 date string (e.g. 2017-08-02T15:05:05.000Z) or the string `now`. If set to `now`, it will use the time the page loaded to render its template. If Number, must be a POSIX epoch value in milliseconds.\n\n#### `displayIn`\n\nOptional prop that can be either `\"utc\"` or `\"local\"` and defaults to `\"local\"`. This prop indicates what timezone to display the date in. If set to the value `\"utc\"`, the component will convert the given date to UTC.\n\n#### `locale`\n\nAn internationalization language string for each timer unit. The default value is `en` (for English). This prop supports all values that are supported by the user's browser.\n\n#### `localeOptions`\n\nThe `localeOptions` object supports all the options under [Intl.DateTimeFormat.options](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/DateTimeFormat#parameters) parameter that specifies the formatting style to use for `localeString` format.\n\nNote that if the `displayIn` prop is set to `utc`, the value of `localeOptions.timeZone` will automatically be converted to `UTC`.\n\n#### `render`\n\nOptional callback that should render a template. The callback will be provided an object with properties/values related to the date expressed in `datetime`.\n\nBy default, the Bento Date Display component will display the [`localeString` form of the Date](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/toLocaleString) for the given locale and localeOption. See the [Returned Time Parameters section](#returned-time-parameters) for more details on how each property will be displayed.\n\n```typescript\n(dateParams: DateParams) => JSXInternal.Element\ninterface DateParams {\n  day: number;\n  dayName: string;\n  dayNameShort: string;\n  dayPeriod: string;\n  dayTwoDigit: string;\n  hour: number;\n  hour12: number;\n  hour12TwoDigit: string;\n  hourTwoDigit: string;\n  iso: string;\n  localeString: string;\n  minute: number;\n  minuteTwoDigit: string;\n  month: number;\n  monthName: string;\n  monthNameShort: string;\n  monthTwoDigit: string;\n  second: number;\n  secondTwoDigit: string;\n  timeZoneName: string;\n  timeZoneNameShort: string;\n  year: number;\n  yearTwoDi: string;\n}\n```\n\n### Returned Time Parameters\n\nThis table lists the format you can specify in your Mustache template:\n\n| Format            | Meaning                                                       |\n| ----------------- | ------------------------------------------------------------- |\n| day               | 1, 2, ...12, 13, etc.                                         |\n| dayName           | string,                                                       |\n| dayNameShort      | string,                                                       |\n| dayPeriod         | string,                                                       |\n| dayTwoDigit       | 01, 02, 03, ..., 12, 13, etc.                                 |\n| hour              | 0, 1, 2, 3, ..., 12, 13, ..., 22, 23                          |\n| hour12            | 1, 2, 3, ..., 12, 1, 2, ..., 11, 12                           |\n| hour12TwoDigit    | 01, 02, ..., 12, 01, 02, ..., 11, 12                          |\n| hourTwoDigit      | 00, 01, 02, ..., 12, 13, ..., 22, 23                          |\n| iso               | A standard ISO8601 date string e.g. 2019-01-23T15:31:21.213Z, |\n| localeString      | A string with a language sensitive representation.            |\n| minute            | 0, 1, 2, ..., 58, 59                                          |\n| minuteTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| month             | 1, 2, 3, ..., 12                                              |\n| monthName         | Internationalized month name string.                          |\n| monthNameShort    | Internationalized abbreviated month name string.,             |\n| monthTwoDigit     | 01, 02, ..., 11, 12                                           |\n| second            | 0, 1, 2, ..., 58, 59                                          |\n| secondTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| timeZoneName      | Internationalized timezone, like `Pacific Daylight Time`      |\n| timeZoneNameShort | Internationalized timezone, abbreviated, like `PST`           |\n| year              | 0, 1, 2, ..., 1999, 2000, 2001, etc.                          |\n| yearTwoDigit      | 00, 01, 02, ..., 17, 18, 19, ..., 98, 99                      |\n","readmeFilename":"README.md","gitHead":"26ab90e1d3f7c29ac76e3fe33cdbeec9e828eff1","bugs":{"url":"https://github.com/ampproject/amphtml/issues"},"_id":"@bentoproject/date-display@1.2204132005.0","_nodeVersion":"16.14.2","_npmVersion":"8.5.0","dist":{"integrity":"sha512-bHp/KLXbYjR0JgI+KMdHGSYBaT/ZAJpYaeqHsK8lASmUX4PP/iTQFWmIyIsLwYSU3qv3GgeXNfq3149YoVPSQQ==","shasum":"d0234552437f9dd5601be82c8c0bf3109f0d0aff","tarball":"https://registry.npmjs.org/@bentoproject/date-display/-/date-display-1.2204132005.0.tgz","fileCount":28,"unpackedSize":671133,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDY/p+dLGVYC5kONLESzWqokfh1Zj1jXbelkhRgE6WNDQIgbC33hCDzkzxCw1Gcn9PHhzgp05OzEk8ckQQ1qp+he+s="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiV9v+ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrsCg/5AcT7PGMzSY8ycPhm1f4HRXGJ/TFMDubOIGSwJbFk0pyjQNy1\r\nqkNByWcTdqzUz8qVVN0uyZClbROR1NcN3Z+CQdPB+/QvnaWIo8FG0nmpsfeG\r\nkFTxrQi60/OOjFUyxyynINLSkF+GBtw5Qc8g5OGpuwaR99XqGx/PKKJuYBp8\r\nRqtDpE5a/A+jrdAVbcMdm1DNfcVhWTdwGN0mdlFHJYbP3oTVMML7Qtt18D/F\r\ncM3AiUtCgCZ5LnMQnqolcgHVKcRQm0nZbhnu8Jt95Hnv1OgpAjnhHJXu8R1C\r\nHjZfo/Xo4L8zqt4hGfMj90iSrPQfoypsD6Axn6HgWxNiBqCLDwdouyLJG7MQ\r\n81xDjWCYLS6FUNlBgFmcXunB2TxbUN0hki1Xn/ouBX8LzqvkcG8eblNo2BRC\r\nUb7h/7trzGOfE8+JIzKD8CYVH/QyBOkFQIg6byEMqMoXsYw0Eclm+d7yVrpT\r\ngJ4mJ2/UH3a8oxr3ruh1T3Wy00f4Drh5E3Gj77ruolw/r/L6az6RLtBP+dXA\r\nwQlSQDh9bgYynTD6XPyQ+HfkjQLA7vRfpFRmi5OHVEWgl290ryx4Q/0LwSD+\r\n+wiFM1oSc+Kl2PVeKpPk1lnLVMv/y5HZ2mdfcL9y7jzvOXc9OmhnGPbjDLq/\r\nbznzKyOZeWVmGktG4SNONvPYPxse/FOeDjU=\r\n=eBXy\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"bentoprojectbot","email":"bentobot@amp.dev"},"directories":{},"maintainers":[{"name":"bentoprojectbot","email":"bentobot@amp.dev"},{"name":"kristoferbaxter","email":"kbax@me.com"},{"name":"esth","email":"esther@amp.dev"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/date-display_1.2204132005.0_1649925118470_0.4414826890790886"},"_hasShrinkwrap":false},"1.2204142048.0":{"name":"@bentoproject/date-display","version":"1.2204142048.0","description":"Displays time data that you can render in your page.","author":{"name":"Bento Authors"},"license":"Apache-2.0","main":"./dist/web-component.js","module":"./dist/web-component.module.js","exports":{".":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./web-component":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./preact":{"import":"./dist/component-preact.module.js","require":"./dist/component-preact.js"},"./react":{"import":"./dist/component-react.module.js","require":"./dist/component-react.js"},"./web-component.css":"./dist/web-component.css"},"repository":{"type":"git","url":"git+https://github.com/ampproject/amphtml.git","directory":"extensions/amp-date-display/1.0"},"homepage":"https://github.com/ampproject/amphtml/tree/main/extensions/amp-date-display/1.0","peerDependencies":{"preact":"^10.2.1","react":"^17.0.0"},"dependencies":{"@bentoproject/core":"0.2204142048.0"},"readme":"# Bento Date Display\n\nDisplays time data that you can render in your page. By providing specific [attributes](#attributes) in the Bento Date Display tag, the Bento Date Display extension returns a list of time parameters, which you can pass to [an amp-mustache template](../../amp-mustache/amp-mustache.md) for rendering. Refer to the [list below for each returned time parameter](#returned-time-parameters).\n\n## Web Component\n\nYou must include each Bento component's required CSS library to guarantee proper loading and before adding custom styles. Or use the light-weight pre-upgrade styles available inline. See [Layout and style](#layout-and-style).\n\n### Example: Import via npm\n\nInstall via npm:\n\n```sh\nnpm install @bentoproject/bento-date-display\n```\n\n```javascript\nimport {defineElement as defineBentoDateDisplay} from '@bentoproject/bento-date-display';\ndefineBentoDateDisplay();\n```\n\n### Include via `<script>`\n\n```html\n<script type=\"module\" src=\"https://cdn.ampproject.org/bento.mjs\" crossorigin=\"anonymous\"></script>\n<script nomodule src=\"https://cdn.ampproject.org/bento.js\" crossorigin=\"anonymous\"></script>\n<!-- Include bento-mustache.js to use mustache templates with this component -->\n<script async src=\"https://cdn.ampproject.org/v0/bento-mustache.js\"></script>\n<script type=\"module\" src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.mjs\" crossorigin=\"anonymous\"></script>\n<script nomodule src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.js\" crossorigin=\"anonymous\"></script>\n<link rel=\"stylesheet\" href=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.css\" crossorigin=\"anonymous\">\n```\n\n### Example\n\n```html\n<!DOCTYPE html>\n<html>\n  <head>\n    <script\n      type=\"module\"\n      async\n      src=\"https://cdn.ampproject.org/bento.mjs\"\n    ></script>\n    <script nomodule src=\"https://cdn.ampproject.org/bento.js\"></script>\n    <script async src=\"https://cdn.ampproject.org/v0/bento-mustache.js\"></script>\n    <script\n      type=\"module\"\n      async\n      src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.mjs\"\n    ></script>\n    <script\n      nomodule\n      async\n      src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.js\"\n    ></script>\n    <link\n      rel=\"stylesheet\"\n      type=\"text/css\"\n      href=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.css\"\n    />\n  </head>\n  <body>\n    <bento-date-display\n      datetime=\"2021-09-09T16:02:08.494Z\"\n      displayIn=\"utc\"\n      locale=\"en-GB\"\n    >\n      <template>\n        <div>ISO: {{iso}}; locale: {{localeString}}</div>\n      </template>\n    </bento-date-display>\n  </body>\n</html>\n```\n\n### Interactivity and API usage\n\nThe Bento Date Display component does not have an imperative API. However, the Bento Date Display Web Component will render a mustache-template, provided by the consumer in a `<template>` tag with `type=\"amp-mustache\"`. This template may interpolate date-related parameters. See the [Returned Time Parameters section](#returned-time-parameters) for a full list of all the available parameters.\n\n### Layout and style\n\nEach Bento component has a small CSS library you must include to guarantee proper loading without [content shifts](https://web.dev/cls/). Because of order-based specificity, you must manually ensure that stylesheets are included before any custom styles.\n\n```html\n<link rel=\"stylesheet\" type=\"text/css\" href=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.css\">\n```\n\nAlternatively, you may also make the light-weight pre-upgrade styles available inline:\n\n```html\n<style data-bento-boilerplate>\n  bento-date-display {\n    display: block;\n    overflow: hidden;\n    position: relative;\n  }\n</style>\n```\n\n### Attributes\n\n#### `datetime`\n\nThe `datetime` attribute specifies the date and time in a standard ISO 8601 date\nstring (e.g. 2017-08-02T15:05:05.000Z) or the string `now`. If set to `now`,\n`bento-date-display` will use the time the page loaded to render its template.\n\n#### `timestamp-ms`\n\nThe `timestamp-ms` attribute specifies the date and time using the number of\nmilliseconds since 1970-01-01T0:00:00.000Z\n\n#### `timestamp-seconds`\n\nThe `timestamp-seconds` attribute specifies the date and time using the number\nof seconds since 1970-01-01T0:00:00.000Z\n\n#### `locale` (optional)\n\nAn internationalization language string for each timer unit. The default value\nis `en` (for English). This attribute supports all values that are supported by\nthe user's browser.\n\n#### `display-in` (optional)\n\nIf set to the value `utc`, the `display-in` attribute will convert the given\ndate to UTC.\n\n#### `offset-seconds` (optional)\n\nThe `offset-seconds` attribute specifies an integer number of seconds to shift\nthe given date.\n\n#### `data-options-\\*` (optional)\n\nThe `data-options-*` supports all the options under [Intl.DateTimeFormat.options](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/DateTimeFormat#parameters)\nparameter that specifies the formatting style to use for `localeString` format.\nValid attributes include: `data-options-date-style`, `data-options-time-style`, etc.\n\nNote that if `display-in` attrubute is set to `utc`, the value of\n`data-options-time-zone` will automatically be converted to `UTC`.\n\n### Styling\n\nYou may use the `bento-date-display` element selector to style the Bento Date Display component freely.\n\n---\n\n## Preact/React Component\n\n### Import via npm\n\n```sh\nnpm install @bentoproject/date-display\n```\n\n```javascript\nimport React from 'react';\nimport {BentoDateDisplay} from '@bentoproject/date-display/react';\nimport '@bentoproject/date-display/styles.css';\n\nfunction App() {\n  return (\n    <BentoDateDisplay\n      datetime={dateTime}\n      displayIn={displayIn}\n      locale={locale}\n      render={(date) => (\n        <div>{`ISO: ${date.iso}; locale: ${date.localeString}`}</div>\n      )}\n    />\n  );\n}\n```\n\n### Interactivity and API usage\n\nThe Bento Date Display component does not have an imperative API. However, the Bento Date Display Preact/React component does accept a `render` prop that renders the consumer's template. This `render` prop should be a function which the Bento Date Display Preact/React component can use to render its template. The `render` callback will be provided a variety of date-related parameters for consumers to interpolate in the rendered template. See the [`render` prop section](#render) for more information.\n\n### Layout and style\n\nThe Bento Date Display Preact/React component allows consumers to render their own templates. These templates may use inline styles, `<style>` tags, Preact/React components that import their own stylesheets.\n\n### Props\n\n#### `datetime`\n\nRequired prop. Denotes the date and time as a Date, String, or Number. If String, must be a standard ISO 8601 date string (e.g. 2017-08-02T15:05:05.000Z) or the string `now`. If set to `now`, it will use the time the page loaded to render its template. If Number, must be a POSIX epoch value in milliseconds.\n\n#### `displayIn`\n\nOptional prop that can be either `\"utc\"` or `\"local\"` and defaults to `\"local\"`. This prop indicates what timezone to display the date in. If set to the value `\"utc\"`, the component will convert the given date to UTC.\n\n#### `locale`\n\nAn internationalization language string for each timer unit. The default value is `en` (for English). This prop supports all values that are supported by the user's browser.\n\n#### `localeOptions`\n\nThe `localeOptions` object supports all the options under [Intl.DateTimeFormat.options](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/DateTimeFormat#parameters) parameter that specifies the formatting style to use for `localeString` format.\n\nNote that if the `displayIn` prop is set to `utc`, the value of `localeOptions.timeZone` will automatically be converted to `UTC`.\n\n#### `render`\n\nOptional callback that should render a template. The callback will be provided an object with properties/values related to the date expressed in `datetime`.\n\nBy default, the Bento Date Display component will display the [`localeString` form of the Date](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/toLocaleString) for the given locale and localeOption. See the [Returned Time Parameters section](#returned-time-parameters) for more details on how each property will be displayed.\n\n```typescript\n(dateParams: DateParams) => JSXInternal.Element\ninterface DateParams {\n  day: number;\n  dayName: string;\n  dayNameShort: string;\n  dayPeriod: string;\n  dayTwoDigit: string;\n  hour: number;\n  hour12: number;\n  hour12TwoDigit: string;\n  hourTwoDigit: string;\n  iso: string;\n  localeString: string;\n  minute: number;\n  minuteTwoDigit: string;\n  month: number;\n  monthName: string;\n  monthNameShort: string;\n  monthTwoDigit: string;\n  second: number;\n  secondTwoDigit: string;\n  timeZoneName: string;\n  timeZoneNameShort: string;\n  year: number;\n  yearTwoDi: string;\n}\n```\n\n### Returned Time Parameters\n\nThis table lists the format you can specify in your Mustache template:\n\n| Format            | Meaning                                                       |\n| ----------------- | ------------------------------------------------------------- |\n| day               | 1, 2, ...12, 13, etc.                                         |\n| dayName           | string,                                                       |\n| dayNameShort      | string,                                                       |\n| dayPeriod         | string,                                                       |\n| dayTwoDigit       | 01, 02, 03, ..., 12, 13, etc.                                 |\n| hour              | 0, 1, 2, 3, ..., 12, 13, ..., 22, 23                          |\n| hour12            | 1, 2, 3, ..., 12, 1, 2, ..., 11, 12                           |\n| hour12TwoDigit    | 01, 02, ..., 12, 01, 02, ..., 11, 12                          |\n| hourTwoDigit      | 00, 01, 02, ..., 12, 13, ..., 22, 23                          |\n| iso               | A standard ISO8601 date string e.g. 2019-01-23T15:31:21.213Z, |\n| localeString      | A string with a language sensitive representation.            |\n| minute            | 0, 1, 2, ..., 58, 59                                          |\n| minuteTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| month             | 1, 2, 3, ..., 12                                              |\n| monthName         | Internationalized month name string.                          |\n| monthNameShort    | Internationalized abbreviated month name string.,             |\n| monthTwoDigit     | 01, 02, ..., 11, 12                                           |\n| second            | 0, 1, 2, ..., 58, 59                                          |\n| secondTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| timeZoneName      | Internationalized timezone, like `Pacific Daylight Time`      |\n| timeZoneNameShort | Internationalized timezone, abbreviated, like `PST`           |\n| year              | 0, 1, 2, ..., 1999, 2000, 2001, etc.                          |\n| yearTwoDigit      | 00, 01, 02, ..., 17, 18, 19, ..., 98, 99                      |\n","readmeFilename":"README.md","gitHead":"32d29a09afd66bca55e024a4f21b1cdf6690cfdb","bugs":{"url":"https://github.com/ampproject/amphtml/issues"},"_id":"@bentoproject/date-display@1.2204142048.0","_nodeVersion":"16.14.2","_npmVersion":"8.5.0","dist":{"integrity":"sha512-Vtw8NMIadivnY2pku4BLKNwg1+YgG9UBhGhp6DJLOhQMFc5F4ioLW9AlRwMOCQ7Z/sSKBCx3mqkPaE0fzq/9/Q==","shasum":"ebb6f868d63f7876d78e8201bdb07150f90ba5e5","tarball":"https://registry.npmjs.org/@bentoproject/date-display/-/date-display-1.2204142048.0.tgz","fileCount":28,"unpackedSize":671133,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDAcK9blUWnr/VgzsNTww/j3wqDlgZtNd28muBdN/kx7gIhAKYdmTFX/quORD4gCR3WPvoeD2hTPW0mSlqmbViDBq0o"}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiWSwhACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmou9g//Qd8nhXPK3y1DZEeS+UaTjD1xxS5e9Zj6xYMvkEhZ8Ys3eqSN\r\nHqTYK7PQz3f3RJsvbNcaeWSdX6BRuOe1r48c+855Ljq+2aEDp91T9KAheRiK\r\na4Ru/wlHYWcFZkAxsP9o3YAcfq2iVockq3eKAcPiqsP/pu1r37qVc+mi14fA\r\neSaZiZsXNFvoR5qmLmNtbYTZyux00PQUQJeb/UzDlnNz2zJUDSyhF+0bdBJh\r\n4CfcVePZjZJuy0NSPdZ5xk9VSR44Tb62NEHAAPZ22diSYerjoRGuuJs1SX3M\r\ns49Iw3VzhSXWACawEPpFWN7+/qEEBPicJOJrNvCOclFf8IrBmNCj2pm67epC\r\nfm/7b551tQOCyTSt1inyxFjccS89wG6pmxHW1D0HNtbZGVI0kDNrMwUQKwZX\r\nl3AXhNfr32b2g+U6tH/eJzmDk5S4RkgY9j7AiCAAPljawGFzo0FsBAbtim7a\r\n5f/+Y6i7aDU6eVS/TlZ9oF0rILBMRxxF1FCAUEQ3BVadpOAtWccg1BuXBzb2\r\nvaai2aGUeTOr78lCo+hyq2fJLKgcz87+86giAEJ+bxR0/rzr3pT2lxwBvN1o\r\nL/GUBCg5jfWBVjcIBm8ObrVI99YaKkOsyxrcVR1RT9BlB0MS7Y+pByLFRhCJ\r\niBS8u4xKi6orCw7rJqtO3qKYPh2tIWO3eU8=\r\n=5zr2\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"bentoprojectbot","email":"bentobot@amp.dev"},"directories":{},"maintainers":[{"name":"bentoprojectbot","email":"bentobot@amp.dev"},{"name":"kristoferbaxter","email":"kbax@me.com"},{"name":"esth","email":"esther@amp.dev"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/date-display_1.2204142048.0_1650011169395_0.7128904358238342"},"_hasShrinkwrap":false},"1.2204160405.0":{"name":"@bentoproject/date-display","version":"1.2204160405.0","description":"Displays time data that you can render in your page.","author":{"name":"Bento Authors"},"license":"Apache-2.0","main":"./dist/web-component.js","module":"./dist/web-component.module.js","exports":{".":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./web-component":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./preact":{"import":"./dist/component-preact.module.js","require":"./dist/component-preact.js"},"./react":{"import":"./dist/component-react.module.js","require":"./dist/component-react.js"},"./web-component.css":"./dist/web-component.css"},"repository":{"type":"git","url":"git+https://github.com/ampproject/amphtml.git","directory":"extensions/amp-date-display/1.0"},"homepage":"https://github.com/ampproject/amphtml/tree/main/extensions/amp-date-display/1.0","peerDependencies":{"preact":"^10.2.1","react":"^17.0.0"},"dependencies":{"@bentoproject/core":"0.2204160405.0"},"gitHead":"a26d51722a65f29aa7f77872b7906f6e7ed62e9a","bugs":{"url":"https://github.com/ampproject/amphtml/issues"},"_id":"@bentoproject/date-display@1.2204160405.0","_nodeVersion":"16.14.2","_npmVersion":"8.5.0","dist":{"integrity":"sha512-uI1N83h+eqGTXlMeSxSaoa4uyYJ15DPLxvKBTIdDNRb08gsF4Vd0z1RNCVJtJHhFzK5bw8+ayTG+iVlu9gsxSw==","shasum":"6a4016a74a579fd30c4ad7383590d70f2cf2c77d","tarball":"https://registry.npmjs.org/@bentoproject/date-display/-/date-display-1.2204160405.0.tgz","fileCount":28,"unpackedSize":671133,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDEF6RqziiZnGdZMdTlqewLRkQgkPN8HwepoMdlBj8sQAIhAMxX8ilxpe5hm+YKI5RVkOwKMmM0nKnyVdi0VoRtobdm"}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiWn0UACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmoCehAAgv+DF/zm8LXjVIY6RdaC0cCZpzoQc5avOzyDJjcgfNDXeAiM\r\n9bWsm/yisiOjNmDQF6qGPze4QjxT0rGpw8cn9KIekHrtIn9XB5mJmofBRCok\r\nQlUQ1ziqH5DDfEzvKHUt1gBX123Cnc3TvwRIT02LhnVrqzb9llLSJ/b1ehTn\r\nhMwwqeTerPO2dvhfxAkIWK0viyFhSnVwKPS/W8nu42AGBK9yJ7iw88JXS0G1\r\nAduuEhiXoSN0wSShKKFg0Enc4ely0MZvGCmU7duNQexApQvHMGomzwahK5Ff\r\n1tkAVMWmLlQxaQt+8uq1ihLmI9h4RGAR9M0QEDTeHZAurvi4HtVFr34270aA\r\nxH0DzSv85BGUBAajd63X8d22dRZsu1/HbCBVdxeUK7N4A2mAloIf9D2ToKna\r\n32KqQ+XhKFrTq4hkU5i11LZtRwxUSLhTSQoQ0L6h9Kphf/N0JqyXpdBj6SeM\r\n43i9KdXRHKbcYkjpJd5/At1G/R3Z9SDAYCo8Hle4NZX6dpu8Kb5xXSMMf8vq\r\ndXWyt+UWcA6/dWwNwQhak0VnC5hmtrODDOilooHJANQOI1tspMRJ+MjEQnwE\r\nbJUafEupfYmlA8pbmDb/s42yu6vKYSakUBGYm9h7kYoERNnKvozVe0E5bRae\r\ngvcDXLZIivhqk+MNmCwbZzNnQcW/BD3J8EY=\r\n=iv4j\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"bentoprojectbot","email":"bentobot@amp.dev"},"directories":{},"maintainers":[{"name":"bentoprojectbot","email":"bentobot@amp.dev"},{"name":"kristoferbaxter","email":"kbax@me.com"},{"name":"esth","email":"esther@amp.dev"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/date-display_1.2204160405.0_1650097427930_0.37745486351259094"},"_hasShrinkwrap":false},"1.2204182206.0":{"name":"@bentoproject/date-display","version":"1.2204182206.0","description":"Displays time data that you can render in your page.","author":{"name":"Bento Authors"},"license":"Apache-2.0","main":"./dist/web-component.js","module":"./dist/web-component.module.js","exports":{".":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./web-component":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./preact":{"import":"./dist/component-preact.module.js","require":"./dist/component-preact.js"},"./react":{"import":"./dist/component-react.module.js","require":"./dist/component-react.js"},"./web-component.css":"./dist/web-component.css"},"repository":{"type":"git","url":"git+https://github.com/ampproject/amphtml.git","directory":"extensions/amp-date-display/1.0"},"homepage":"https://github.com/ampproject/amphtml/tree/main/extensions/amp-date-display/1.0","peerDependencies":{"preact":"^10.2.1","react":"^17.0.0"},"dependencies":{"@bentoproject/core":"0.2204182206.0"},"readme":"# Bento Date Display\n\nDisplays time data that you can render in your page. By providing specific [attributes](#attributes) in the Bento Date Display tag, the Bento Date Display extension returns a list of time parameters, which you can pass to [an amp-mustache template](../../amp-mustache/amp-mustache.md) for rendering. Refer to the [list below for each returned time parameter](#returned-time-parameters).\n\n## Web Component\n\nYou must include each Bento component's required CSS library to guarantee proper loading and before adding custom styles. Or use the light-weight pre-upgrade styles available inline. See [Layout and style](#layout-and-style).\n\n### Example: Import via npm\n\nInstall via npm:\n\n```sh\nnpm install @bentoproject/bento-date-display\n```\n\n```javascript\nimport {defineElement as defineBentoDateDisplay} from '@bentoproject/bento-date-display';\ndefineBentoDateDisplay();\n```\n\n### Include via `<script>`\n\n```html\n<script type=\"module\" src=\"https://cdn.ampproject.org/bento.mjs\" crossorigin=\"anonymous\"></script>\n<script nomodule src=\"https://cdn.ampproject.org/bento.js\" crossorigin=\"anonymous\"></script>\n<!-- Include bento-mustache.js to use mustache templates with this component -->\n<script async src=\"https://cdn.ampproject.org/v0/bento-mustache.js\"></script>\n<script type=\"module\" src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.mjs\" crossorigin=\"anonymous\"></script>\n<script nomodule src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.js\" crossorigin=\"anonymous\"></script>\n<link rel=\"stylesheet\" href=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.css\" crossorigin=\"anonymous\">\n```\n\n### Example\n\n```html\n<!DOCTYPE html>\n<html>\n  <head>\n    <script\n      type=\"module\"\n      async\n      src=\"https://cdn.ampproject.org/bento.mjs\"\n    ></script>\n    <script nomodule src=\"https://cdn.ampproject.org/bento.js\"></script>\n    <script async src=\"https://cdn.ampproject.org/v0/bento-mustache.js\"></script>\n    <script\n      type=\"module\"\n      async\n      src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.mjs\"\n    ></script>\n    <script\n      nomodule\n      async\n      src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.js\"\n    ></script>\n    <link\n      rel=\"stylesheet\"\n      type=\"text/css\"\n      href=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.css\"\n    />\n  </head>\n  <body>\n    <bento-date-display\n      datetime=\"2021-09-09T16:02:08.494Z\"\n      displayIn=\"utc\"\n      locale=\"en-GB\"\n    >\n      <template>\n        <div>ISO: {{iso}}; locale: {{localeString}}</div>\n      </template>\n    </bento-date-display>\n  </body>\n</html>\n```\n\n### Interactivity and API usage\n\nThe Bento Date Display component does not have an imperative API. However, the Bento Date Display Web Component will render a mustache-template, provided by the consumer in a `<template>` tag with `type=\"amp-mustache\"`. This template may interpolate date-related parameters. See the [Returned Time Parameters section](#returned-time-parameters) for a full list of all the available parameters.\n\n### Layout and style\n\nEach Bento component has a small CSS library you must include to guarantee proper loading without [content shifts](https://web.dev/cls/). Because of order-based specificity, you must manually ensure that stylesheets are included before any custom styles.\n\n```html\n<link rel=\"stylesheet\" type=\"text/css\" href=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.css\">\n```\n\nAlternatively, you may also make the light-weight pre-upgrade styles available inline:\n\n```html\n<style data-bento-boilerplate>\n  bento-date-display {\n    display: block;\n    overflow: hidden;\n    position: relative;\n  }\n</style>\n```\n\n### Attributes\n\n#### `datetime`\n\nThe `datetime` attribute specifies the date and time in a standard ISO 8601 date\nstring (e.g. 2017-08-02T15:05:05.000Z) or the string `now`. If set to `now`,\n`bento-date-display` will use the time the page loaded to render its template.\n\n#### `timestamp-ms`\n\nThe `timestamp-ms` attribute specifies the date and time using the number of\nmilliseconds since 1970-01-01T0:00:00.000Z\n\n#### `timestamp-seconds`\n\nThe `timestamp-seconds` attribute specifies the date and time using the number\nof seconds since 1970-01-01T0:00:00.000Z\n\n#### `locale` (optional)\n\nAn internationalization language string for each timer unit. The default value\nis `en` (for English). This attribute supports all values that are supported by\nthe user's browser.\n\n#### `display-in` (optional)\n\nIf set to the value `utc`, the `display-in` attribute will convert the given\ndate to UTC.\n\n#### `offset-seconds` (optional)\n\nThe `offset-seconds` attribute specifies an integer number of seconds to shift\nthe given date.\n\n#### `data-options-\\*` (optional)\n\nThe `data-options-*` supports all the options under [Intl.DateTimeFormat.options](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/DateTimeFormat#parameters)\nparameter that specifies the formatting style to use for `localeString` format.\nValid attributes include: `data-options-date-style`, `data-options-time-style`, etc.\n\nNote that if `display-in` attrubute is set to `utc`, the value of\n`data-options-time-zone` will automatically be converted to `UTC`.\n\n### Styling\n\nYou may use the `bento-date-display` element selector to style the Bento Date Display component freely.\n\n---\n\n## Preact/React Component\n\n### Import via npm\n\n```sh\nnpm install @bentoproject/date-display\n```\n\n```javascript\nimport React from 'react';\nimport {BentoDateDisplay} from '@bentoproject/date-display/react';\nimport '@bentoproject/date-display/styles.css';\n\nfunction App() {\n  return (\n    <BentoDateDisplay\n      datetime={dateTime}\n      displayIn={displayIn}\n      locale={locale}\n      render={(date) => (\n        <div>{`ISO: ${date.iso}; locale: ${date.localeString}`}</div>\n      )}\n    />\n  );\n}\n```\n\n### Interactivity and API usage\n\nThe Bento Date Display component does not have an imperative API. However, the Bento Date Display Preact/React component does accept a `render` prop that renders the consumer's template. This `render` prop should be a function which the Bento Date Display Preact/React component can use to render its template. The `render` callback will be provided a variety of date-related parameters for consumers to interpolate in the rendered template. See the [`render` prop section](#render) for more information.\n\n### Layout and style\n\nThe Bento Date Display Preact/React component allows consumers to render their own templates. These templates may use inline styles, `<style>` tags, Preact/React components that import their own stylesheets.\n\n### Props\n\n#### `datetime`\n\nRequired prop. Denotes the date and time as a Date, String, or Number. If String, must be a standard ISO 8601 date string (e.g. 2017-08-02T15:05:05.000Z) or the string `now`. If set to `now`, it will use the time the page loaded to render its template. If Number, must be a POSIX epoch value in milliseconds.\n\n#### `displayIn`\n\nOptional prop that can be either `\"utc\"` or `\"local\"` and defaults to `\"local\"`. This prop indicates what timezone to display the date in. If set to the value `\"utc\"`, the component will convert the given date to UTC.\n\n#### `locale`\n\nAn internationalization language string for each timer unit. The default value is `en` (for English). This prop supports all values that are supported by the user's browser.\n\n#### `localeOptions`\n\nThe `localeOptions` object supports all the options under [Intl.DateTimeFormat.options](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/DateTimeFormat#parameters) parameter that specifies the formatting style to use for `localeString` format.\n\nNote that if the `displayIn` prop is set to `utc`, the value of `localeOptions.timeZone` will automatically be converted to `UTC`.\n\n#### `render`\n\nOptional callback that should render a template. The callback will be provided an object with properties/values related to the date expressed in `datetime`.\n\nBy default, the Bento Date Display component will display the [`localeString` form of the Date](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/toLocaleString) for the given locale and localeOption. See the [Returned Time Parameters section](#returned-time-parameters) for more details on how each property will be displayed.\n\n```typescript\n(dateParams: DateParams) => JSXInternal.Element\ninterface DateParams {\n  day: number;\n  dayName: string;\n  dayNameShort: string;\n  dayPeriod: string;\n  dayTwoDigit: string;\n  hour: number;\n  hour12: number;\n  hour12TwoDigit: string;\n  hourTwoDigit: string;\n  iso: string;\n  localeString: string;\n  minute: number;\n  minuteTwoDigit: string;\n  month: number;\n  monthName: string;\n  monthNameShort: string;\n  monthTwoDigit: string;\n  second: number;\n  secondTwoDigit: string;\n  timeZoneName: string;\n  timeZoneNameShort: string;\n  year: number;\n  yearTwoDi: string;\n}\n```\n\n### Returned Time Parameters\n\nThis table lists the format you can specify in your Mustache template:\n\n| Format            | Meaning                                                       |\n| ----------------- | ------------------------------------------------------------- |\n| day               | 1, 2, ...12, 13, etc.                                         |\n| dayName           | string,                                                       |\n| dayNameShort      | string,                                                       |\n| dayPeriod         | string,                                                       |\n| dayTwoDigit       | 01, 02, 03, ..., 12, 13, etc.                                 |\n| hour              | 0, 1, 2, 3, ..., 12, 13, ..., 22, 23                          |\n| hour12            | 1, 2, 3, ..., 12, 1, 2, ..., 11, 12                           |\n| hour12TwoDigit    | 01, 02, ..., 12, 01, 02, ..., 11, 12                          |\n| hourTwoDigit      | 00, 01, 02, ..., 12, 13, ..., 22, 23                          |\n| iso               | A standard ISO8601 date string e.g. 2019-01-23T15:31:21.213Z, |\n| localeString      | A string with a language sensitive representation.            |\n| minute            | 0, 1, 2, ..., 58, 59                                          |\n| minuteTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| month             | 1, 2, 3, ..., 12                                              |\n| monthName         | Internationalized month name string.                          |\n| monthNameShort    | Internationalized abbreviated month name string.,             |\n| monthTwoDigit     | 01, 02, ..., 11, 12                                           |\n| second            | 0, 1, 2, ..., 58, 59                                          |\n| secondTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| timeZoneName      | Internationalized timezone, like `Pacific Daylight Time`      |\n| timeZoneNameShort | Internationalized timezone, abbreviated, like `PST`           |\n| year              | 0, 1, 2, ..., 1999, 2000, 2001, etc.                          |\n| yearTwoDigit      | 00, 01, 02, ..., 17, 18, 19, ..., 98, 99                      |\n","readmeFilename":"README.md","gitHead":"83e7c80d7406923369ada8c1a7a5dc660ebdcad6","bugs":{"url":"https://github.com/ampproject/amphtml/issues"},"_id":"@bentoproject/date-display@1.2204182206.0","_nodeVersion":"16.14.2","_npmVersion":"8.5.0","dist":{"integrity":"sha512-Zqkwv1/8V/RoJcJkQuIR98v7WZNp6eERsCMliT6k5mOJ/JQ2Tb/wk2juOBmZo1QL7sjrp+a/Hu3065WfUjcTAA==","shasum":"fc64df8ef7620e90ea79977d84e468b6458ef311","tarball":"https://registry.npmjs.org/@bentoproject/date-display/-/date-display-1.2204182206.0.tgz","fileCount":29,"unpackedSize":672045,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIFaPiVOfr22ldOWyoSts8Am9t1MYFrUM5MOghzl+bY9DAiAnvS/odQ2diehPPtdPJ8LH0th6V9P4vZfXRAyGNNM1eg=="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiXnMGACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqhfRAAkJMys+Bw7MkXPyhFvRVszckucay3MqJhg/pyWvDtlf3wcPPR\r\n5KyOsHzYO2JahCOTKKkpYyI90Ara/FB2diINCcDsHYzI8wrd2sgaR+Dd54ij\r\nkX8kHvZ3UpSpbafqIlvaEPjI0R7myQmazwMov+WTvhcuTumydKEwtbk5IbDd\r\ng2/tPTXyFVYksGWUBHdE+GvsKvcefezOX9fK7oFjf3uV3LXEVqsac+v3CGB0\r\n/9zfin9U0EzAwkgtzGMe+XARBEofwaG/9rENd9EuxDbDYgo/7a/j+Eu7ZmPS\r\nG0f1Kc2K5a1CbPT8cz1gHlmJHiPASsCYJldoZZTHBlwJubweltI2c3vVViUY\r\nf8EOkpzXWowaMv8nCu3qB66jshAk+JHzowRP3cWF1jmjbsmQdrSijsvONDmP\r\nZ7mEYu3wpDX//gQ7vGND4zNUwKCNRoJln6uRHDAoRC3jol7SJUnBPYhLvBfs\r\nli3XIylDy05H+NYvNy1vsIGEC7eanh4BfFgFtNSahGsBBfaAjKIdH/9paSSk\r\ng6oFlOfamOylW4oETEuhuSKhdODDtoyi5cQZHAOWDSluKgEDGpCj+9KvABlO\r\nl0yfODU+hfLjzzirQxn9E0HNjBGXChhlFMi2ngUDxaG8JMbOWXcEUkfZzA1F\r\nyPgbe2Z8AKsool9u+TCxwplqxIMAxLnJ55Q=\r\n=ZJe+\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"bentoprojectbot","email":"bentobot@amp.dev"},"directories":{},"maintainers":[{"name":"bentoprojectbot","email":"bentobot@amp.dev"},{"name":"kristoferbaxter","email":"kbax@me.com"},{"name":"esth","email":"esther@amp.dev"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/date-display_1.2204182206.0_1650356998446_0.7613424686070924"},"_hasShrinkwrap":false},"1.2204191429.0":{"name":"@bentoproject/date-display","version":"1.2204191429.0","description":"Displays time data that you can render in your page.","author":{"name":"Bento Authors"},"license":"Apache-2.0","main":"./dist/web-component.js","module":"./dist/web-component.module.js","exports":{".":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./web-component":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./preact":{"import":"./dist/component-preact.module.js","require":"./dist/component-preact.js"},"./react":{"import":"./dist/component-react.module.js","require":"./dist/component-react.js"},"./web-component.css":"./dist/web-component.css"},"repository":{"type":"git","url":"git+https://github.com/ampproject/amphtml.git","directory":"extensions/amp-date-display/1.0"},"homepage":"https://github.com/ampproject/amphtml/tree/main/extensions/amp-date-display/1.0","peerDependencies":{"preact":"^10.2.1","react":"^17.0.0"},"dependencies":{"@bentoproject/core":"0.2204191429.0"},"readme":"# Bento Date Display\n\nDisplays time data that you can render in your page. By providing specific [attributes](#attributes) in the Bento Date Display tag, the Bento Date Display extension returns a list of time parameters, which you can pass to [an amp-mustache template](../../amp-mustache/amp-mustache.md) for rendering. Refer to the [list below for each returned time parameter](#returned-time-parameters).\n\n## Web Component\n\nYou must include each Bento component's required CSS library to guarantee proper loading and before adding custom styles. Or use the light-weight pre-upgrade styles available inline. See [Layout and style](#layout-and-style).\n\n### Example: Import via npm\n\nInstall via npm:\n\n```sh\nnpm install @bentoproject/bento-date-display\n```\n\n```javascript\nimport {defineElement as defineBentoDateDisplay} from '@bentoproject/bento-date-display';\ndefineBentoDateDisplay();\n```\n\n### Include via `<script>`\n\n```html\n<script type=\"module\" src=\"https://cdn.ampproject.org/bento.mjs\" crossorigin=\"anonymous\"></script>\n<script nomodule src=\"https://cdn.ampproject.org/bento.js\" crossorigin=\"anonymous\"></script>\n<!-- Include bento-mustache.js to use mustache templates with this component -->\n<script async src=\"https://cdn.ampproject.org/v0/bento-mustache.js\"></script>\n<script type=\"module\" src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.mjs\" crossorigin=\"anonymous\"></script>\n<script nomodule src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.js\" crossorigin=\"anonymous\"></script>\n<link rel=\"stylesheet\" href=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.css\" crossorigin=\"anonymous\">\n```\n\n### Example\n\n```html\n<!DOCTYPE html>\n<html>\n  <head>\n    <script\n      type=\"module\"\n      async\n      src=\"https://cdn.ampproject.org/bento.mjs\"\n    ></script>\n    <script nomodule src=\"https://cdn.ampproject.org/bento.js\"></script>\n    <script async src=\"https://cdn.ampproject.org/v0/bento-mustache.js\"></script>\n    <script\n      type=\"module\"\n      async\n      src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.mjs\"\n    ></script>\n    <script\n      nomodule\n      async\n      src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.js\"\n    ></script>\n    <link\n      rel=\"stylesheet\"\n      type=\"text/css\"\n      href=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.css\"\n    />\n  </head>\n  <body>\n    <bento-date-display\n      datetime=\"2021-09-09T16:02:08.494Z\"\n      displayIn=\"utc\"\n      locale=\"en-GB\"\n    >\n      <template>\n        <div>ISO: {{iso}}; locale: {{localeString}}</div>\n      </template>\n    </bento-date-display>\n  </body>\n</html>\n```\n\n### Interactivity and API usage\n\nThe Bento Date Display component does not have an imperative API. However, the Bento Date Display Web Component will render a mustache-template, provided by the consumer in a `<template>` tag with `type=\"amp-mustache\"`. This template may interpolate date-related parameters. See the [Returned Time Parameters section](#returned-time-parameters) for a full list of all the available parameters.\n\n### Layout and style\n\nEach Bento component has a small CSS library you must include to guarantee proper loading without [content shifts](https://web.dev/cls/). Because of order-based specificity, you must manually ensure that stylesheets are included before any custom styles.\n\n```html\n<link rel=\"stylesheet\" type=\"text/css\" href=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.css\">\n```\n\nAlternatively, you may also make the light-weight pre-upgrade styles available inline:\n\n```html\n<style data-bento-boilerplate>\n  bento-date-display {\n    display: block;\n    overflow: hidden;\n    position: relative;\n  }\n</style>\n```\n\n### Attributes\n\n#### `datetime`\n\nThe `datetime` attribute specifies the date and time in a standard ISO 8601 date\nstring (e.g. 2017-08-02T15:05:05.000Z) or the string `now`. If set to `now`,\n`bento-date-display` will use the time the page loaded to render its template.\n\n#### `timestamp-ms`\n\nThe `timestamp-ms` attribute specifies the date and time using the number of\nmilliseconds since 1970-01-01T0:00:00.000Z\n\n#### `timestamp-seconds`\n\nThe `timestamp-seconds` attribute specifies the date and time using the number\nof seconds since 1970-01-01T0:00:00.000Z\n\n#### `locale` (optional)\n\nAn internationalization language string for each timer unit. The default value\nis `en` (for English). This attribute supports all values that are supported by\nthe user's browser.\n\n#### `display-in` (optional)\n\nIf set to the value `utc`, the `display-in` attribute will convert the given\ndate to UTC.\n\n#### `offset-seconds` (optional)\n\nThe `offset-seconds` attribute specifies an integer number of seconds to shift\nthe given date.\n\n#### `data-options-\\*` (optional)\n\nThe `data-options-*` supports all the options under [Intl.DateTimeFormat.options](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/DateTimeFormat#parameters)\nparameter that specifies the formatting style to use for `localeString` format.\nValid attributes include: `data-options-date-style`, `data-options-time-style`, etc.\n\nNote that if `display-in` attrubute is set to `utc`, the value of\n`data-options-time-zone` will automatically be converted to `UTC`.\n\n### Styling\n\nYou may use the `bento-date-display` element selector to style the Bento Date Display component freely.\n\n---\n\n## Preact/React Component\n\n### Import via npm\n\n```sh\nnpm install @bentoproject/date-display\n```\n\n```javascript\nimport React from 'react';\nimport {BentoDateDisplay} from '@bentoproject/date-display/react';\nimport '@bentoproject/date-display/styles.css';\n\nfunction App() {\n  return (\n    <BentoDateDisplay\n      datetime={dateTime}\n      displayIn={displayIn}\n      locale={locale}\n      render={(date) => (\n        <div>{`ISO: ${date.iso}; locale: ${date.localeString}`}</div>\n      )}\n    />\n  );\n}\n```\n\n### Interactivity and API usage\n\nThe Bento Date Display component does not have an imperative API. However, the Bento Date Display Preact/React component does accept a `render` prop that renders the consumer's template. This `render` prop should be a function which the Bento Date Display Preact/React component can use to render its template. The `render` callback will be provided a variety of date-related parameters for consumers to interpolate in the rendered template. See the [`render` prop section](#render) for more information.\n\n### Layout and style\n\nThe Bento Date Display Preact/React component allows consumers to render their own templates. These templates may use inline styles, `<style>` tags, Preact/React components that import their own stylesheets.\n\n### Props\n\n#### `datetime`\n\nRequired prop. Denotes the date and time as a Date, String, or Number. If String, must be a standard ISO 8601 date string (e.g. 2017-08-02T15:05:05.000Z) or the string `now`. If set to `now`, it will use the time the page loaded to render its template. If Number, must be a POSIX epoch value in milliseconds.\n\n#### `displayIn`\n\nOptional prop that can be either `\"utc\"` or `\"local\"` and defaults to `\"local\"`. This prop indicates what timezone to display the date in. If set to the value `\"utc\"`, the component will convert the given date to UTC.\n\n#### `locale`\n\nAn internationalization language string for each timer unit. The default value is `en` (for English). This prop supports all values that are supported by the user's browser.\n\n#### `localeOptions`\n\nThe `localeOptions` object supports all the options under [Intl.DateTimeFormat.options](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/DateTimeFormat#parameters) parameter that specifies the formatting style to use for `localeString` format.\n\nNote that if the `displayIn` prop is set to `utc`, the value of `localeOptions.timeZone` will automatically be converted to `UTC`.\n\n#### `render`\n\nOptional callback that should render a template. The callback will be provided an object with properties/values related to the date expressed in `datetime`.\n\nBy default, the Bento Date Display component will display the [`localeString` form of the Date](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/toLocaleString) for the given locale and localeOption. See the [Returned Time Parameters section](#returned-time-parameters) for more details on how each property will be displayed.\n\n```typescript\n(dateParams: DateParams) => JSXInternal.Element\ninterface DateParams {\n  day: number;\n  dayName: string;\n  dayNameShort: string;\n  dayPeriod: string;\n  dayTwoDigit: string;\n  hour: number;\n  hour12: number;\n  hour12TwoDigit: string;\n  hourTwoDigit: string;\n  iso: string;\n  localeString: string;\n  minute: number;\n  minuteTwoDigit: string;\n  month: number;\n  monthName: string;\n  monthNameShort: string;\n  monthTwoDigit: string;\n  second: number;\n  secondTwoDigit: string;\n  timeZoneName: string;\n  timeZoneNameShort: string;\n  year: number;\n  yearTwoDi: string;\n}\n```\n\n### Returned Time Parameters\n\nThis table lists the format you can specify in your Mustache template:\n\n| Format            | Meaning                                                       |\n| ----------------- | ------------------------------------------------------------- |\n| day               | 1, 2, ...12, 13, etc.                                         |\n| dayName           | string,                                                       |\n| dayNameShort      | string,                                                       |\n| dayPeriod         | string,                                                       |\n| dayTwoDigit       | 01, 02, 03, ..., 12, 13, etc.                                 |\n| hour              | 0, 1, 2, 3, ..., 12, 13, ..., 22, 23                          |\n| hour12            | 1, 2, 3, ..., 12, 1, 2, ..., 11, 12                           |\n| hour12TwoDigit    | 01, 02, ..., 12, 01, 02, ..., 11, 12                          |\n| hourTwoDigit      | 00, 01, 02, ..., 12, 13, ..., 22, 23                          |\n| iso               | A standard ISO8601 date string e.g. 2019-01-23T15:31:21.213Z, |\n| localeString      | A string with a language sensitive representation.            |\n| minute            | 0, 1, 2, ..., 58, 59                                          |\n| minuteTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| month             | 1, 2, 3, ..., 12                                              |\n| monthName         | Internationalized month name string.                          |\n| monthNameShort    | Internationalized abbreviated month name string.,             |\n| monthTwoDigit     | 01, 02, ..., 11, 12                                           |\n| second            | 0, 1, 2, ..., 58, 59                                          |\n| secondTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| timeZoneName      | Internationalized timezone, like `Pacific Daylight Time`      |\n| timeZoneNameShort | Internationalized timezone, abbreviated, like `PST`           |\n| year              | 0, 1, 2, ..., 1999, 2000, 2001, etc.                          |\n| yearTwoDigit      | 00, 01, 02, ..., 17, 18, 19, ..., 98, 99                      |\n","readmeFilename":"README.md","gitHead":"2ef2d96efb4624b0ef0313b60134c9e35a4e8429","bugs":{"url":"https://github.com/ampproject/amphtml/issues"},"_id":"@bentoproject/date-display@1.2204191429.0","_nodeVersion":"16.14.2","_npmVersion":"8.5.0","dist":{"integrity":"sha512-s/17fwD4wZfny3P6HT5/v3qqLkStW2g3Utr/ktaKSHhAedqIl8QJR+xqVoEyW0bFQRloWDSAj3/Hz931sBviSQ==","shasum":"232e166f5598b69164edccfd5380b3633fa47061","tarball":"https://registry.npmjs.org/@bentoproject/date-display/-/date-display-1.2204191429.0.tgz","fileCount":29,"unpackedSize":672045,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQD6FG9W/haooqRcPM9q12yee5QaHoqPQ0CrZwyuAZ9a4AIhANkdoXkOqID57r/+Xkg/qOyrhxlRRfa9bLRCVlNpg2L0"}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiX8TKACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmp0kw/9FT8p88+l9+n98tgDOn1zNOK2LOYzY948P+fYlcvXBP2BS4AN\r\nMf4oOIBsz19cxlTBvr4GtXLUWZGWcKjOS6yN5kQyDUpIQtceKNxp1ggdXsRo\r\nTLsUStzd8tpKaSNmXj2LFoh9t2vbKq9SOe/q63XRVPUoPlV8Z5Cp8XTnXMZK\r\nrlDdUUU5N8RiqXFBXkWgv2a4P3ZNND9EOiTTmFGYfa52W4RGHQHn/pzBw8Nz\r\n91OAFJBqaOgf5TKKCxjTJIE8IrRX3BO7JeCnKPPyRBZsOhZq8K2tTYctW8wk\r\nMhB8jGvnmPPPcvt0mAYlo5XdbinBeHu/FkrAAufFWBEtqzQDxn8+uvINhkrG\r\niVRGPrEUWqkRGk/WE2o54GkuOJHiQkWietvPUHN9XebA4bi8yv37nCeOPiz1\r\ngNWKTnzEdLl9wb3fmhn4PsFCrhLNCKOsp1sLX/aIIUoJLjs2zbrt001zYExP\r\ngKUky7jL0Jmgqt8QN7rA66nKlq0KYKm2+2Y5OHCix0SYdNqLc3Qgvt7MxkFq\r\n2c3xZOAG5cprTi3mZkxtAtJIZ+HZN6kMD5kcvTOTPkiJIzpSKGHQrFqYuruA\r\npIHBRlgfD1myzqsCgjokMeITJ86D6xeYV5LkPDUdFd9gC8rFLI7Eq52dItxA\r\np1KRpECv2Vw8sDnT+jwtD6SeMG7VAsMZ3EI=\r\n=NBs+\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"bentoprojectbot","email":"bentobot@amp.dev"},"directories":{},"maintainers":[{"name":"bentoprojectbot","email":"bentobot@amp.dev"},{"name":"kristoferbaxter","email":"kbax@me.com"},{"name":"esth","email":"esther@amp.dev"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/date-display_1.2204191429.0_1650443466037_0.6188683052944379"},"_hasShrinkwrap":false},"1.2204211736.0":{"name":"@bentoproject/date-display","version":"1.2204211736.0","description":"Displays time data that you can render in your page.","author":{"name":"Bento Authors"},"license":"Apache-2.0","main":"./dist/web-component.js","module":"./dist/web-component.module.js","exports":{".":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./web-component":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./preact":{"import":"./dist/component-preact.module.js","require":"./dist/component-preact.js"},"./react":{"import":"./dist/component-react.module.js","require":"./dist/component-react.js"},"./web-component.css":"./dist/web-component.css"},"repository":{"type":"git","url":"git+https://github.com/ampproject/amphtml.git","directory":"extensions/amp-date-display/1.0"},"homepage":"https://github.com/ampproject/amphtml/tree/main/extensions/amp-date-display/1.0","peerDependencies":{"preact":"^10.2.1","react":"^17.0.0"},"dependencies":{"@bentoproject/core":"0.2204211736.0"},"readme":"# Bento Date Display\n\nDisplays time data that you can render in your page. By providing specific [attributes](#attributes) in the Bento Date Display tag, the Bento Date Display extension returns a list of time parameters, which you can pass to [an amp-mustache template](../../amp-mustache/amp-mustache.md) for rendering. Refer to the [list below for each returned time parameter](#returned-time-parameters).\n\n## Web Component\n\nYou must include each Bento component's required CSS library to guarantee proper loading and before adding custom styles. Or use the light-weight pre-upgrade styles available inline. See [Layout and style](#layout-and-style).\n\n### Example: Import via npm\n\nInstall via npm:\n\n```sh\nnpm install @bentoproject/bento-date-display\n```\n\n```javascript\nimport {defineElement as defineBentoDateDisplay} from '@bentoproject/bento-date-display';\ndefineBentoDateDisplay();\n```\n\n### Include via `<script>`\n\n```html\n<script type=\"module\" src=\"https://cdn.ampproject.org/bento.mjs\" crossorigin=\"anonymous\"></script>\n<script nomodule src=\"https://cdn.ampproject.org/bento.js\" crossorigin=\"anonymous\"></script>\n<!-- Include bento-mustache.js to use mustache templates with this component -->\n<script async src=\"https://cdn.ampproject.org/v0/bento-mustache.js\"></script>\n<script type=\"module\" src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.mjs\" crossorigin=\"anonymous\"></script>\n<script nomodule src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.js\" crossorigin=\"anonymous\"></script>\n<link rel=\"stylesheet\" href=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.css\" crossorigin=\"anonymous\">\n```\n\n### Example\n\n```html\n<!DOCTYPE html>\n<html>\n  <head>\n    <script\n      type=\"module\"\n      async\n      src=\"https://cdn.ampproject.org/bento.mjs\"\n    ></script>\n    <script nomodule src=\"https://cdn.ampproject.org/bento.js\"></script>\n    <script async src=\"https://cdn.ampproject.org/v0/bento-mustache.js\"></script>\n    <script\n      type=\"module\"\n      async\n      src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.mjs\"\n    ></script>\n    <script\n      nomodule\n      async\n      src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.js\"\n    ></script>\n    <link\n      rel=\"stylesheet\"\n      type=\"text/css\"\n      href=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.css\"\n    />\n  </head>\n  <body>\n    <bento-date-display\n      datetime=\"2021-09-09T16:02:08.494Z\"\n      displayIn=\"utc\"\n      locale=\"en-GB\"\n    >\n      <template>\n        <div>ISO: {{iso}}; locale: {{localeString}}</div>\n      </template>\n    </bento-date-display>\n  </body>\n</html>\n```\n\n### Interactivity and API usage\n\nThe Bento Date Display component does not have an imperative API. However, the Bento Date Display Web Component will render a mustache-template, provided by the consumer in a `<template>` tag with `type=\"amp-mustache\"`. This template may interpolate date-related parameters. See the [Returned Time Parameters section](#returned-time-parameters) for a full list of all the available parameters.\n\n### Layout and style\n\nEach Bento component has a small CSS library you must include to guarantee proper loading without [content shifts](https://web.dev/cls/). Because of order-based specificity, you must manually ensure that stylesheets are included before any custom styles.\n\n```html\n<link rel=\"stylesheet\" type=\"text/css\" href=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.css\">\n```\n\nAlternatively, you may also make the light-weight pre-upgrade styles available inline:\n\n```html\n<style data-bento-boilerplate>\n  bento-date-display {\n    display: block;\n    overflow: hidden;\n    position: relative;\n  }\n</style>\n```\n\n### Attributes\n\n#### `datetime`\n\nThe `datetime` attribute specifies the date and time in a standard ISO 8601 date\nstring (e.g. 2017-08-02T15:05:05.000Z) or the string `now`. If set to `now`,\n`bento-date-display` will use the time the page loaded to render its template.\n\n#### `timestamp-ms`\n\nThe `timestamp-ms` attribute specifies the date and time using the number of\nmilliseconds since 1970-01-01T0:00:00.000Z\n\n#### `timestamp-seconds`\n\nThe `timestamp-seconds` attribute specifies the date and time using the number\nof seconds since 1970-01-01T0:00:00.000Z\n\n#### `locale` (optional)\n\nAn internationalization language string for each timer unit. The default value\nis `en` (for English). This attribute supports all values that are supported by\nthe user's browser.\n\n#### `display-in` (optional)\n\nIf set to the value `utc`, the `display-in` attribute will convert the given\ndate to UTC.\n\n#### `offset-seconds` (optional)\n\nThe `offset-seconds` attribute specifies an integer number of seconds to shift\nthe given date.\n\n#### `data-options-\\*` (optional)\n\nThe `data-options-*` supports all the options under [Intl.DateTimeFormat.options](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/DateTimeFormat#parameters)\nparameter that specifies the formatting style to use for `localeString` format.\nValid attributes include: `data-options-date-style`, `data-options-time-style`, etc.\n\nNote that if `display-in` attrubute is set to `utc`, the value of\n`data-options-time-zone` will automatically be converted to `UTC`.\n\n### Styling\n\nYou may use the `bento-date-display` element selector to style the Bento Date Display component freely.\n\n---\n\n## Preact/React Component\n\n### Import via npm\n\n```sh\nnpm install @bentoproject/date-display\n```\n\n```javascript\nimport React from 'react';\nimport {BentoDateDisplay} from '@bentoproject/date-display/react';\nimport '@bentoproject/date-display/styles.css';\n\nfunction App() {\n  return (\n    <BentoDateDisplay\n      datetime={dateTime}\n      displayIn={displayIn}\n      locale={locale}\n      render={(date) => (\n        <div>{`ISO: ${date.iso}; locale: ${date.localeString}`}</div>\n      )}\n    />\n  );\n}\n```\n\n### Interactivity and API usage\n\nThe Bento Date Display component does not have an imperative API. However, the Bento Date Display Preact/React component does accept a `render` prop that renders the consumer's template. This `render` prop should be a function which the Bento Date Display Preact/React component can use to render its template. The `render` callback will be provided a variety of date-related parameters for consumers to interpolate in the rendered template. See the [`render` prop section](#render) for more information.\n\n### Layout and style\n\nThe Bento Date Display Preact/React component allows consumers to render their own templates. These templates may use inline styles, `<style>` tags, Preact/React components that import their own stylesheets.\n\n### Props\n\n#### `datetime`\n\nRequired prop. Denotes the date and time as a Date, String, or Number. If String, must be a standard ISO 8601 date string (e.g. 2017-08-02T15:05:05.000Z) or the string `now`. If set to `now`, it will use the time the page loaded to render its template. If Number, must be a POSIX epoch value in milliseconds.\n\n#### `displayIn`\n\nOptional prop that can be either `\"utc\"` or `\"local\"` and defaults to `\"local\"`. This prop indicates what timezone to display the date in. If set to the value `\"utc\"`, the component will convert the given date to UTC.\n\n#### `locale`\n\nAn internationalization language string for each timer unit. The default value is `en` (for English). This prop supports all values that are supported by the user's browser.\n\n#### `localeOptions`\n\nThe `localeOptions` object supports all the options under [Intl.DateTimeFormat.options](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/DateTimeFormat#parameters) parameter that specifies the formatting style to use for `localeString` format.\n\nNote that if the `displayIn` prop is set to `utc`, the value of `localeOptions.timeZone` will automatically be converted to `UTC`.\n\n#### `render`\n\nOptional callback that should render a template. The callback will be provided an object with properties/values related to the date expressed in `datetime`.\n\nBy default, the Bento Date Display component will display the [`localeString` form of the Date](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/toLocaleString) for the given locale and localeOption. See the [Returned Time Parameters section](#returned-time-parameters) for more details on how each property will be displayed.\n\n```typescript\n(dateParams: DateParams) => JSXInternal.Element\ninterface DateParams {\n  day: number;\n  dayName: string;\n  dayNameShort: string;\n  dayPeriod: string;\n  dayTwoDigit: string;\n  hour: number;\n  hour12: number;\n  hour12TwoDigit: string;\n  hourTwoDigit: string;\n  iso: string;\n  localeString: string;\n  minute: number;\n  minuteTwoDigit: string;\n  month: number;\n  monthName: string;\n  monthNameShort: string;\n  monthTwoDigit: string;\n  second: number;\n  secondTwoDigit: string;\n  timeZoneName: string;\n  timeZoneNameShort: string;\n  year: number;\n  yearTwoDi: string;\n}\n```\n\n### Returned Time Parameters\n\nThis table lists the format you can specify in your Mustache template:\n\n| Format            | Meaning                                                       |\n| ----------------- | ------------------------------------------------------------- |\n| day               | 1, 2, ...12, 13, etc.                                         |\n| dayName           | string,                                                       |\n| dayNameShort      | string,                                                       |\n| dayPeriod         | string,                                                       |\n| dayTwoDigit       | 01, 02, 03, ..., 12, 13, etc.                                 |\n| hour              | 0, 1, 2, 3, ..., 12, 13, ..., 22, 23                          |\n| hour12            | 1, 2, 3, ..., 12, 1, 2, ..., 11, 12                           |\n| hour12TwoDigit    | 01, 02, ..., 12, 01, 02, ..., 11, 12                          |\n| hourTwoDigit      | 00, 01, 02, ..., 12, 13, ..., 22, 23                          |\n| iso               | A standard ISO8601 date string e.g. 2019-01-23T15:31:21.213Z, |\n| localeString      | A string with a language sensitive representation.            |\n| minute            | 0, 1, 2, ..., 58, 59                                          |\n| minuteTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| month             | 1, 2, 3, ..., 12                                              |\n| monthName         | Internationalized month name string.                          |\n| monthNameShort    | Internationalized abbreviated month name string.,             |\n| monthTwoDigit     | 01, 02, ..., 11, 12                                           |\n| second            | 0, 1, 2, ..., 58, 59                                          |\n| secondTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| timeZoneName      | Internationalized timezone, like `Pacific Daylight Time`      |\n| timeZoneNameShort | Internationalized timezone, abbreviated, like `PST`           |\n| year              | 0, 1, 2, ..., 1999, 2000, 2001, etc.                          |\n| yearTwoDigit      | 00, 01, 02, ..., 17, 18, 19, ..., 98, 99                      |\n","readmeFilename":"README.md","gitHead":"01dad70364e4b2b9707441c2c8ec973e1547b195","bugs":{"url":"https://github.com/ampproject/amphtml/issues"},"_id":"@bentoproject/date-display@1.2204211736.0","_nodeVersion":"16.14.2","_npmVersion":"8.5.0","dist":{"integrity":"sha512-X2XBmN2ksgbFQ5bv0AclYF+5yiLXIS9ZThLUBfNxkYFzEgyudpJwEUWSO27NEJDjFdQuQU+uTj4gT4SmXBieVw==","shasum":"17be5e3b4f83ee5a783fec9ae9a96225f7689730","tarball":"https://registry.npmjs.org/@bentoproject/date-display/-/date-display-1.2204211736.0.tgz","fileCount":29,"unpackedSize":672045,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIB9rKTLWP3mRKBtkaTgH7TS1OgdQQwGteZWUrjqN/miKAiEA8PnYmElyGGViaXa8lSTosbxGMh8ddH/XfpbdUqyJS30="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiYmZ+ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrwCQ/+La0eae/s++VEXaQI0aQPlbpeFI1b9M9wC8qHyWB5OPAzYehr\r\naFLZN/DqjHm/mT5fiPT7xHd+27QjTOS47GsmoY5FLlEGKqT0JXhiyFTDeanJ\r\nClwV4naBmV2jjaGihg3MfgaQcdUDO0Yi5yvsdQvkBleLMAWRWWjMrfq2b/LC\r\nyQRtGfgnexHp190cWw0qcdpMpWYKpCGoq66vYnSQeDdM4hhAgdOskVbGZ/21\r\nCl3fSOeGZCgbXNdZGndirAidl2/r+eF+dTGhppRr/gP94N3w8fRpiKA/+uIU\r\njTwXmTfAv6zuAFEm3Kwvha4Kv90jO3/i8vZdGkl7pQiSnL2iKsQSufYfZlMJ\r\nUtAA8SCP4EMPvYMcaTxrcf2pXJpW4O/7eIDPJ4fgWH/TkUKTjx5PBXhwjTGK\r\nhYHy4b9hVsUy57C9u2Gu+v9Ufrt3O/9zIzzIfUja4PNFPuBXR/3Rwmm5BcBH\r\n3jb6rQT29LJ3PmcWnQUxMcivCmiM0a9IlKn9sJQ2GoarACw5h+O4Ml/FaKfq\r\ntijOE2cvREyCVBYd+i/4fAFOuIzSwygVvl5Wp3qZuF5UGGSNbL3zh2LF2JAA\r\nFuDqOSO/iIy6cTgC6+xMTKhNYOPZNbaOs/5GWDpC7TOFOu3QW4PgZhpnLD5r\r\nDFda7V7l7tvVDLGtyJMZB0lgW2GB0bO3EiE=\r\n=aD6j\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"bentoprojectbot","email":"bentobot@amp.dev"},"directories":{},"maintainers":[{"name":"bentoprojectbot","email":"bentobot@amp.dev"},{"name":"kristoferbaxter","email":"kbax@me.com"},{"name":"esth","email":"esther@amp.dev"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/date-display_1.2204211736.0_1650615934142_0.10942089977141545"},"_hasShrinkwrap":false},"1.2204221712.0":{"name":"@bentoproject/date-display","version":"1.2204221712.0","description":"Displays time data that you can render in your page.","author":{"name":"Bento Authors"},"license":"Apache-2.0","main":"./dist/web-component.js","module":"./dist/web-component.module.js","exports":{".":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./web-component":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./preact":{"import":"./dist/component-preact.module.js","require":"./dist/component-preact.js"},"./react":{"import":"./dist/component-react.module.js","require":"./dist/component-react.js"},"./web-component.css":"./dist/web-component.css"},"repository":{"type":"git","url":"git+https://github.com/ampproject/amphtml.git","directory":"extensions/amp-date-display/1.0"},"homepage":"https://github.com/ampproject/amphtml/tree/main/extensions/amp-date-display/1.0","peerDependencies":{"preact":"^10.2.1","react":"^17.0.0"},"dependencies":{"@bentoproject/core":"0.2204221712.0"},"gitHead":"fd84f283465064f90218f67c2964f8c0ecc248fe","bugs":{"url":"https://github.com/ampproject/amphtml/issues"},"_id":"@bentoproject/date-display@1.2204221712.0","_nodeVersion":"16.14.2","_npmVersion":"8.5.0","dist":{"integrity":"sha512-roXvAjxVnAekBk6qv89rVr4e4rJoLw75PX4fU8HDqCF46linWELIQ+iUQNdhi9+bw6OJSoEZn6Kie0PbCdGouQ==","shasum":"aa118de8a436a94e610b63264a61f4c515eb58e1","tarball":"https://registry.npmjs.org/@bentoproject/date-display/-/date-display-1.2204221712.0.tgz","fileCount":29,"unpackedSize":672045,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIGV5I9n7gImzOjEvyRvalhZdP8rDw717mdHourwcqPYwAiBbOAWNgdcyCS8xDEoOdhwcxr+QgVEiUxa0BgNV0hOrXw=="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiY7etACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrlDQ//bB59/EMB6yZs2ETo9ufj71w/P/PtMbnxa9erT13AsZche/Zr\r\niIYh7MTMHcmCEb6mvQTcg2NX3jJietBSKLkGH3tiHQsw7rikemBGWOnxnlVR\r\n8IWeiUXGxUXCXXqkyuTUDGxrgB+OHG1BA3Nlwxf5RKR+wbrXe+efAUBhYEaJ\r\nXAfoeNvgawIQJntAfWqwgPWn+cU53m6o7BVETxOyAFyofQrJEQD8Hu5qvS6o\r\n1egpex+glO7srU218Y08PguVg7tdVLAFU6Jzgtl/YAFW8vELtffkal9ffhmT\r\ntio76M9Qd8wP4xEPPWxeHgdf85WzTgDlCEw3YUw+aydc9/VlwpYNpD6M2rQQ\r\njhR7X1ySIjrHi727qn5SBiIVvzQ4KThoo55bmdeoNvUpadI3KEJyS/JX5Uve\r\npEEneIeb/Z3Srbg0WEDZcgAmNtjGXu8nPvrDgtKlJ3JQUFGoP5V029QJtUB5\r\nlTfKQfRe1HaP/znjNkL/HjzJDqb9EreXWaOnAyBrWpSivwIej8+qYeXmIlkS\r\nxvFtAqukuwPkDcM0SBllsY7AdxcYDxG6V/AMcaUwoccBaRStxk++gorF4zwP\r\nDFfhpSDS1zU2+ub/0BqHTvwAaIkuZAfI0v5hiCk+tejfowVpA3CWdru7cCKi\r\napJ5s8ysXAqh9k087VSAjIWJJsmdmr3SNFw=\r\n=x+5e\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"bentoprojectbot","email":"bentobot@amp.dev"},"directories":{},"maintainers":[{"name":"bentoprojectbot","email":"bentobot@amp.dev"},{"name":"kristoferbaxter","email":"kbax@me.com"},{"name":"esth","email":"esther@amp.dev"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/date-display_1.2204221712.0_1650702253144_0.6495702519915445"},"_hasShrinkwrap":false},"1.2204252045.0":{"name":"@bentoproject/date-display","version":"1.2204252045.0","description":"Displays time data that you can render in your page.","author":{"name":"Bento Authors"},"license":"Apache-2.0","main":"./dist/web-component.js","module":"./dist/web-component.module.js","exports":{".":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./web-component":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./preact":{"import":"./dist/component-preact.module.js","require":"./dist/component-preact.js"},"./react":{"import":"./dist/component-react.module.js","require":"./dist/component-react.js"},"./web-component.css":"./dist/web-component.css"},"repository":{"type":"git","url":"git+https://github.com/ampproject/amphtml.git","directory":"extensions/amp-date-display/1.0"},"homepage":"https://github.com/ampproject/amphtml/tree/main/extensions/amp-date-display/1.0","peerDependencies":{"preact":"^10.2.1","react":"^17.0.0"},"dependencies":{"@bentoproject/core":"0.2204252045.0"},"readme":"# Bento Date Display\n\nDisplays time data that you can render in your page. By providing specific [attributes](#attributes) in the Bento Date Display tag, the Bento Date Display extension returns a list of time parameters, which you can pass to [an amp-mustache template](../../amp-mustache/amp-mustache.md) for rendering. Refer to the [list below for each returned time parameter](#returned-time-parameters).\n\n## Web Component\n\nYou must include each Bento component's required CSS library to guarantee proper loading and before adding custom styles. Or use the light-weight pre-upgrade styles available inline. See [Layout and style](#layout-and-style).\n\n### Example: Import via npm\n\nInstall via npm:\n\n```sh\nnpm install @bentoproject/bento-date-display\n```\n\n```javascript\nimport {defineElement as defineBentoDateDisplay} from '@bentoproject/bento-date-display';\ndefineBentoDateDisplay();\n```\n\n### Include via `<script>`\n\n```html\n<script type=\"module\" src=\"https://cdn.ampproject.org/bento.mjs\" crossorigin=\"anonymous\"></script>\n<script nomodule src=\"https://cdn.ampproject.org/bento.js\" crossorigin=\"anonymous\"></script>\n<!-- Include bento-mustache.js to use mustache templates with this component -->\n<script async src=\"https://cdn.ampproject.org/v0/bento-mustache.js\"></script>\n<script type=\"module\" src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.mjs\" crossorigin=\"anonymous\"></script>\n<script nomodule src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.js\" crossorigin=\"anonymous\"></script>\n<link rel=\"stylesheet\" href=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.css\" crossorigin=\"anonymous\">\n```\n\n### Example\n\n```html\n<!DOCTYPE html>\n<html>\n  <head>\n    <script\n      type=\"module\"\n      async\n      src=\"https://cdn.ampproject.org/bento.mjs\"\n    ></script>\n    <script nomodule src=\"https://cdn.ampproject.org/bento.js\"></script>\n    <script async src=\"https://cdn.ampproject.org/v0/bento-mustache.js\"></script>\n    <script\n      type=\"module\"\n      async\n      src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.mjs\"\n    ></script>\n    <script\n      nomodule\n      async\n      src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.js\"\n    ></script>\n    <link\n      rel=\"stylesheet\"\n      type=\"text/css\"\n      href=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.css\"\n    />\n  </head>\n  <body>\n    <bento-date-display\n      datetime=\"2021-09-09T16:02:08.494Z\"\n      displayIn=\"utc\"\n      locale=\"en-GB\"\n    >\n      <template>\n        <div>ISO: {{iso}}; locale: {{localeString}}</div>\n      </template>\n    </bento-date-display>\n  </body>\n</html>\n```\n\n### Interactivity and API usage\n\nThe Bento Date Display component does not have an imperative API. However, the Bento Date Display Web Component will render a mustache-template, provided by the consumer in a `<template>` tag with `type=\"amp-mustache\"`. This template may interpolate date-related parameters. See the [Returned Time Parameters section](#returned-time-parameters) for a full list of all the available parameters.\n\n### Layout and style\n\nEach Bento component has a small CSS library you must include to guarantee proper loading without [content shifts](https://web.dev/cls/). Because of order-based specificity, you must manually ensure that stylesheets are included before any custom styles.\n\n```html\n<link rel=\"stylesheet\" type=\"text/css\" href=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.css\">\n```\n\nAlternatively, you may also make the light-weight pre-upgrade styles available inline:\n\n```html\n<style data-bento-boilerplate>\n  bento-date-display {\n    display: block;\n    overflow: hidden;\n    position: relative;\n  }\n</style>\n```\n\n### Attributes\n\n#### `datetime`\n\nThe `datetime` attribute specifies the date and time in a standard ISO 8601 date\nstring (e.g. 2017-08-02T15:05:05.000Z) or the string `now`. If set to `now`,\n`bento-date-display` will use the time the page loaded to render its template.\n\n#### `timestamp-ms`\n\nThe `timestamp-ms` attribute specifies the date and time using the number of\nmilliseconds since 1970-01-01T0:00:00.000Z\n\n#### `timestamp-seconds`\n\nThe `timestamp-seconds` attribute specifies the date and time using the number\nof seconds since 1970-01-01T0:00:00.000Z\n\n#### `locale` (optional)\n\nAn internationalization language string for each timer unit. The default value\nis `en` (for English). This attribute supports all values that are supported by\nthe user's browser.\n\n#### `display-in` (optional)\n\nIf set to the value `utc`, the `display-in` attribute will convert the given\ndate to UTC.\n\n#### `offset-seconds` (optional)\n\nThe `offset-seconds` attribute specifies an integer number of seconds to shift\nthe given date.\n\n#### `data-options-\\*` (optional)\n\nThe `data-options-*` supports all the options under [Intl.DateTimeFormat.options](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/DateTimeFormat#parameters)\nparameter that specifies the formatting style to use for `localeString` format.\nValid attributes include: `data-options-date-style`, `data-options-time-style`, etc.\n\nNote that if `display-in` attrubute is set to `utc`, the value of\n`data-options-time-zone` will automatically be converted to `UTC`.\n\n### Styling\n\nYou may use the `bento-date-display` element selector to style the Bento Date Display component freely.\n\n---\n\n## Preact/React Component\n\n### Import via npm\n\n```sh\nnpm install @bentoproject/date-display\n```\n\n```javascript\nimport React from 'react';\nimport {BentoDateDisplay} from '@bentoproject/date-display/react';\nimport '@bentoproject/date-display/styles.css';\n\nfunction App() {\n  return (\n    <BentoDateDisplay\n      datetime={dateTime}\n      displayIn={displayIn}\n      locale={locale}\n      render={(date) => (\n        <div>{`ISO: ${date.iso}; locale: ${date.localeString}`}</div>\n      )}\n    />\n  );\n}\n```\n\n### Interactivity and API usage\n\nThe Bento Date Display component does not have an imperative API. However, the Bento Date Display Preact/React component does accept a `render` prop that renders the consumer's template. This `render` prop should be a function which the Bento Date Display Preact/React component can use to render its template. The `render` callback will be provided a variety of date-related parameters for consumers to interpolate in the rendered template. See the [`render` prop section](#render) for more information.\n\n### Layout and style\n\nThe Bento Date Display Preact/React component allows consumers to render their own templates. These templates may use inline styles, `<style>` tags, Preact/React components that import their own stylesheets.\n\n### Props\n\n#### `datetime`\n\nRequired prop. Denotes the date and time as a Date, String, or Number. If String, must be a standard ISO 8601 date string (e.g. 2017-08-02T15:05:05.000Z) or the string `now`. If set to `now`, it will use the time the page loaded to render its template. If Number, must be a POSIX epoch value in milliseconds.\n\n#### `displayIn`\n\nOptional prop that can be either `\"utc\"` or `\"local\"` and defaults to `\"local\"`. This prop indicates what timezone to display the date in. If set to the value `\"utc\"`, the component will convert the given date to UTC.\n\n#### `locale`\n\nAn internationalization language string for each timer unit. The default value is `en` (for English). This prop supports all values that are supported by the user's browser.\n\n#### `localeOptions`\n\nThe `localeOptions` object supports all the options under [Intl.DateTimeFormat.options](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/DateTimeFormat#parameters) parameter that specifies the formatting style to use for `localeString` format.\n\nNote that if the `displayIn` prop is set to `utc`, the value of `localeOptions.timeZone` will automatically be converted to `UTC`.\n\n#### `render`\n\nOptional callback that should render a template. The callback will be provided an object with properties/values related to the date expressed in `datetime`.\n\nBy default, the Bento Date Display component will display the [`localeString` form of the Date](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/toLocaleString) for the given locale and localeOption. See the [Returned Time Parameters section](#returned-time-parameters) for more details on how each property will be displayed.\n\n```typescript\n(dateParams: DateParams) => JSXInternal.Element\ninterface DateParams {\n  day: number;\n  dayName: string;\n  dayNameShort: string;\n  dayPeriod: string;\n  dayTwoDigit: string;\n  hour: number;\n  hour12: number;\n  hour12TwoDigit: string;\n  hourTwoDigit: string;\n  iso: string;\n  localeString: string;\n  minute: number;\n  minuteTwoDigit: string;\n  month: number;\n  monthName: string;\n  monthNameShort: string;\n  monthTwoDigit: string;\n  second: number;\n  secondTwoDigit: string;\n  timeZoneName: string;\n  timeZoneNameShort: string;\n  year: number;\n  yearTwoDi: string;\n}\n```\n\n### Returned Time Parameters\n\nThis table lists the format you can specify in your Mustache template:\n\n| Format            | Meaning                                                       |\n| ----------------- | ------------------------------------------------------------- |\n| day               | 1, 2, ...12, 13, etc.                                         |\n| dayName           | string,                                                       |\n| dayNameShort      | string,                                                       |\n| dayPeriod         | string,                                                       |\n| dayTwoDigit       | 01, 02, 03, ..., 12, 13, etc.                                 |\n| hour              | 0, 1, 2, 3, ..., 12, 13, ..., 22, 23                          |\n| hour12            | 1, 2, 3, ..., 12, 1, 2, ..., 11, 12                           |\n| hour12TwoDigit    | 01, 02, ..., 12, 01, 02, ..., 11, 12                          |\n| hourTwoDigit      | 00, 01, 02, ..., 12, 13, ..., 22, 23                          |\n| iso               | A standard ISO8601 date string e.g. 2019-01-23T15:31:21.213Z, |\n| localeString      | A string with a language sensitive representation.            |\n| minute            | 0, 1, 2, ..., 58, 59                                          |\n| minuteTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| month             | 1, 2, 3, ..., 12                                              |\n| monthName         | Internationalized month name string.                          |\n| monthNameShort    | Internationalized abbreviated month name string.,             |\n| monthTwoDigit     | 01, 02, ..., 11, 12                                           |\n| second            | 0, 1, 2, ..., 58, 59                                          |\n| secondTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| timeZoneName      | Internationalized timezone, like `Pacific Daylight Time`      |\n| timeZoneNameShort | Internationalized timezone, abbreviated, like `PST`           |\n| year              | 0, 1, 2, ..., 1999, 2000, 2001, etc.                          |\n| yearTwoDigit      | 00, 01, 02, ..., 17, 18, 19, ..., 98, 99                      |\n","readmeFilename":"README.md","gitHead":"9dcb73514b52c635b732b72b56561ac680ea344e","bugs":{"url":"https://github.com/ampproject/amphtml/issues"},"_id":"@bentoproject/date-display@1.2204252045.0","_nodeVersion":"16.14.2","_npmVersion":"8.5.0","dist":{"integrity":"sha512-PIaYM0VfDtdz1JNdFBgGklXpMnaW/LZMJqbI8SHzigzeufzLg5ByAN/qHZHeaA42CVLot7A8nnZUbZfjLgFtFw==","shasum":"b37e1c579896db6610d50e313c3f94b343ec8a2a","tarball":"https://registry.npmjs.org/@bentoproject/date-display/-/date-display-1.2204252045.0.tgz","fileCount":29,"unpackedSize":672045,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIA5AlDrtEOx6Ov5+fmw6kFuDFArTm8iMcj/Y+OEUiFKaAiA18zppBFVrdqWhpzVO7OCkzOk4uIv61ot+AREpACRnVw=="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiZ62uACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpJKQ//REnpg53amm2YqDejf+IS4AZ7vmXukJfiJBAc74uVfHrK+QSO\r\nI/3V9YW9+IaNRufHkxif/hBYXIOJRDst2KHqZnIn42+3rhv8dgmw31/I32dl\r\n+HNC3tzKda7lDStocOSzXLZeIbPYnPXcDqMEgC3a6RkIWdGIk4QJ2kT6jWgi\r\naeSYOluCGXbAgh8rCKFSLy4++zXqUrIRakPVpjST2lCLku4zdkSoghhxe8gr\r\nSKfRlk9GhYBMtRQdsfxVVOxO+cZnC1eSk90H+1D2JDMy/RmXp8ja69/FtlFs\r\nAaaqpwAP9B3r1CvzKG5RPPN6JliPGbOx49F1ql5mjAisXLGHnb6VYPSHsk1g\r\n7agKuTFIp6J0a4+28niAgXu5FdwOsjLAeqgfwbJmXPCEKs2rNpQJZZu2WRiB\r\nRpqbClRAlOvYx1qlxybVXBKzzmZnWyl1zI0kSVvr78PovpZGTFrMO/wCFmqx\r\nmtnsMHIfns2nkH5Spaa/Tol0dfqHr4sMWVfJv6ePlzUoaA6YWRvPuIGDauka\r\nWusFbOEKbHIVNB4kTVfxqtaP+C3BdeScsuvhSoqGPlnjLY1D45jnB8oHku7c\r\nMr59HrXgLjuQd2wkaO007dquDnmvnpyAOdbBXyHBqrjGPNZ6A+/EJ91eoZ03\r\nbMooWVcf6r7dOW3PIJGzTBXnPUej08UfJoQ=\r\n=+97y\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"bentoprojectbot","email":"bentobot@amp.dev"},"directories":{},"maintainers":[{"name":"bentoprojectbot","email":"bentobot@amp.dev"},{"name":"kristoferbaxter","email":"kbax@me.com"},{"name":"esth","email":"esther@amp.dev"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/date-display_1.2204252045.0_1650961838385_0.617825209057477"},"_hasShrinkwrap":false},"1.2204272205.0":{"name":"@bentoproject/date-display","version":"1.2204272205.0","description":"Displays time data that you can render in your page.","author":{"name":"Bento Authors"},"license":"Apache-2.0","main":"./dist/web-component.js","module":"./dist/web-component.module.js","exports":{".":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./web-component":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./preact":{"import":"./dist/component-preact.module.js","require":"./dist/component-preact.js"},"./react":{"import":"./dist/component-react.module.js","require":"./dist/component-react.js"},"./web-component.css":"./dist/web-component.css"},"repository":{"type":"git","url":"git+https://github.com/ampproject/amphtml.git","directory":"extensions/amp-date-display/1.0"},"homepage":"https://github.com/ampproject/amphtml/tree/main/extensions/amp-date-display/1.0","peerDependencies":{"preact":"^10.2.1","react":"^17.0.0"},"dependencies":{"@bentoproject/core":"0.2204272205.0"},"readme":"# Bento Date Display\n\nDisplays time data that you can render in your page. By providing specific [attributes](#attributes) in the Bento Date Display tag, the Bento Date Display extension returns a list of time parameters, which you can pass to [an amp-mustache template](../../amp-mustache/amp-mustache.md) for rendering. Refer to the [list below for each returned time parameter](#returned-time-parameters).\n\n## Web Component\n\nYou must include each Bento component's required CSS library to guarantee proper loading and before adding custom styles. Or use the light-weight pre-upgrade styles available inline. See [Layout and style](#layout-and-style).\n\n### Example: Import via npm\n\nInstall via npm:\n\n```sh\nnpm install @bentoproject/bento-date-display\n```\n\n```javascript\nimport {defineElement as defineBentoDateDisplay} from '@bentoproject/bento-date-display';\ndefineBentoDateDisplay();\n```\n\n### Include via `<script>`\n\n```html\n<script type=\"module\" src=\"https://cdn.ampproject.org/bento.mjs\" crossorigin=\"anonymous\"></script>\n<script nomodule src=\"https://cdn.ampproject.org/bento.js\" crossorigin=\"anonymous\"></script>\n<!-- Include bento-mustache.js to use mustache templates with this component -->\n<script async src=\"https://cdn.ampproject.org/v0/bento-mustache.js\"></script>\n<script type=\"module\" src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.mjs\" crossorigin=\"anonymous\"></script>\n<script nomodule src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.js\" crossorigin=\"anonymous\"></script>\n<link rel=\"stylesheet\" href=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.css\" crossorigin=\"anonymous\">\n```\n\n### Example\n\n```html\n<!DOCTYPE html>\n<html>\n  <head>\n    <script\n      type=\"module\"\n      async\n      src=\"https://cdn.ampproject.org/bento.mjs\"\n    ></script>\n    <script nomodule src=\"https://cdn.ampproject.org/bento.js\"></script>\n    <script async src=\"https://cdn.ampproject.org/v0/bento-mustache.js\"></script>\n    <script\n      type=\"module\"\n      async\n      src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.mjs\"\n    ></script>\n    <script\n      nomodule\n      async\n      src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.js\"\n    ></script>\n    <link\n      rel=\"stylesheet\"\n      type=\"text/css\"\n      href=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.css\"\n    />\n  </head>\n  <body>\n    <bento-date-display\n      datetime=\"2021-09-09T16:02:08.494Z\"\n      displayIn=\"utc\"\n      locale=\"en-GB\"\n    >\n      <template>\n        <div>ISO: {{iso}}; locale: {{localeString}}</div>\n      </template>\n    </bento-date-display>\n  </body>\n</html>\n```\n\n### Interactivity and API usage\n\nThe Bento Date Display component does not have an imperative API. However, the Bento Date Display Web Component will render a mustache-template, provided by the consumer in a `<template>` tag with `type=\"amp-mustache\"`. This template may interpolate date-related parameters. See the [Returned Time Parameters section](#returned-time-parameters) for a full list of all the available parameters.\n\n### Layout and style\n\nEach Bento component has a small CSS library you must include to guarantee proper loading without [content shifts](https://web.dev/cls/). Because of order-based specificity, you must manually ensure that stylesheets are included before any custom styles.\n\n```html\n<link rel=\"stylesheet\" type=\"text/css\" href=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.css\">\n```\n\nAlternatively, you may also make the light-weight pre-upgrade styles available inline:\n\n```html\n<style data-bento-boilerplate>\n  bento-date-display {\n    display: block;\n    overflow: hidden;\n    position: relative;\n  }\n</style>\n```\n\n### Attributes\n\n#### `datetime`\n\nThe `datetime` attribute specifies the date and time in a standard ISO 8601 date\nstring (e.g. 2017-08-02T15:05:05.000Z) or the string `now`. If set to `now`,\n`bento-date-display` will use the time the page loaded to render its template.\n\n#### `timestamp-ms`\n\nThe `timestamp-ms` attribute specifies the date and time using the number of\nmilliseconds since 1970-01-01T0:00:00.000Z\n\n#### `timestamp-seconds`\n\nThe `timestamp-seconds` attribute specifies the date and time using the number\nof seconds since 1970-01-01T0:00:00.000Z\n\n#### `locale` (optional)\n\nAn internationalization language string for each timer unit. The default value\nis `en` (for English). This attribute supports all values that are supported by\nthe user's browser.\n\n#### `display-in` (optional)\n\nIf set to the value `utc`, the `display-in` attribute will convert the given\ndate to UTC.\n\n#### `offset-seconds` (optional)\n\nThe `offset-seconds` attribute specifies an integer number of seconds to shift\nthe given date.\n\n#### `data-options-\\*` (optional)\n\nThe `data-options-*` supports all the options under [Intl.DateTimeFormat.options](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/DateTimeFormat#parameters)\nparameter that specifies the formatting style to use for `localeString` format.\nValid attributes include: `data-options-date-style`, `data-options-time-style`, etc.\n\nNote that if `display-in` attrubute is set to `utc`, the value of\n`data-options-time-zone` will automatically be converted to `UTC`.\n\n### Styling\n\nYou may use the `bento-date-display` element selector to style the Bento Date Display component freely.\n\n---\n\n## Preact/React Component\n\n### Import via npm\n\n```sh\nnpm install @bentoproject/date-display\n```\n\n```javascript\nimport React from 'react';\nimport {BentoDateDisplay} from '@bentoproject/date-display/react';\nimport '@bentoproject/date-display/styles.css';\n\nfunction App() {\n  return (\n    <BentoDateDisplay\n      datetime={dateTime}\n      displayIn={displayIn}\n      locale={locale}\n      render={(date) => (\n        <div>{`ISO: ${date.iso}; locale: ${date.localeString}`}</div>\n      )}\n    />\n  );\n}\n```\n\n### Interactivity and API usage\n\nThe Bento Date Display component does not have an imperative API. However, the Bento Date Display Preact/React component does accept a `render` prop that renders the consumer's template. This `render` prop should be a function which the Bento Date Display Preact/React component can use to render its template. The `render` callback will be provided a variety of date-related parameters for consumers to interpolate in the rendered template. See the [`render` prop section](#render) for more information.\n\n### Layout and style\n\nThe Bento Date Display Preact/React component allows consumers to render their own templates. These templates may use inline styles, `<style>` tags, Preact/React components that import their own stylesheets.\n\n### Props\n\n#### `datetime`\n\nRequired prop. Denotes the date and time as a Date, String, or Number. If String, must be a standard ISO 8601 date string (e.g. 2017-08-02T15:05:05.000Z) or the string `now`. If set to `now`, it will use the time the page loaded to render its template. If Number, must be a POSIX epoch value in milliseconds.\n\n#### `displayIn`\n\nOptional prop that can be either `\"utc\"` or `\"local\"` and defaults to `\"local\"`. This prop indicates what timezone to display the date in. If set to the value `\"utc\"`, the component will convert the given date to UTC.\n\n#### `locale`\n\nAn internationalization language string for each timer unit. The default value is `en` (for English). This prop supports all values that are supported by the user's browser.\n\n#### `localeOptions`\n\nThe `localeOptions` object supports all the options under [Intl.DateTimeFormat.options](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/DateTimeFormat#parameters) parameter that specifies the formatting style to use for `localeString` format.\n\nNote that if the `displayIn` prop is set to `utc`, the value of `localeOptions.timeZone` will automatically be converted to `UTC`.\n\n#### `render`\n\nOptional callback that should render a template. The callback will be provided an object with properties/values related to the date expressed in `datetime`.\n\nBy default, the Bento Date Display component will display the [`localeString` form of the Date](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/toLocaleString) for the given locale and localeOption. See the [Returned Time Parameters section](#returned-time-parameters) for more details on how each property will be displayed.\n\n```typescript\n(dateParams: DateParams) => JSXInternal.Element\ninterface DateParams {\n  day: number;\n  dayName: string;\n  dayNameShort: string;\n  dayPeriod: string;\n  dayTwoDigit: string;\n  hour: number;\n  hour12: number;\n  hour12TwoDigit: string;\n  hourTwoDigit: string;\n  iso: string;\n  localeString: string;\n  minute: number;\n  minuteTwoDigit: string;\n  month: number;\n  monthName: string;\n  monthNameShort: string;\n  monthTwoDigit: string;\n  second: number;\n  secondTwoDigit: string;\n  timeZoneName: string;\n  timeZoneNameShort: string;\n  year: number;\n  yearTwoDi: string;\n}\n```\n\n### Returned Time Parameters\n\nThis table lists the format you can specify in your Mustache template:\n\n| Format            | Meaning                                                       |\n| ----------------- | ------------------------------------------------------------- |\n| day               | 1, 2, ...12, 13, etc.                                         |\n| dayName           | string,                                                       |\n| dayNameShort      | string,                                                       |\n| dayPeriod         | string,                                                       |\n| dayTwoDigit       | 01, 02, 03, ..., 12, 13, etc.                                 |\n| hour              | 0, 1, 2, 3, ..., 12, 13, ..., 22, 23                          |\n| hour12            | 1, 2, 3, ..., 12, 1, 2, ..., 11, 12                           |\n| hour12TwoDigit    | 01, 02, ..., 12, 01, 02, ..., 11, 12                          |\n| hourTwoDigit      | 00, 01, 02, ..., 12, 13, ..., 22, 23                          |\n| iso               | A standard ISO8601 date string e.g. 2019-01-23T15:31:21.213Z, |\n| localeString      | A string with a language sensitive representation.            |\n| minute            | 0, 1, 2, ..., 58, 59                                          |\n| minuteTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| month             | 1, 2, 3, ..., 12                                              |\n| monthName         | Internationalized month name string.                          |\n| monthNameShort    | Internationalized abbreviated month name string.,             |\n| monthTwoDigit     | 01, 02, ..., 11, 12                                           |\n| second            | 0, 1, 2, ..., 58, 59                                          |\n| secondTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| timeZoneName      | Internationalized timezone, like `Pacific Daylight Time`      |\n| timeZoneNameShort | Internationalized timezone, abbreviated, like `PST`           |\n| year              | 0, 1, 2, ..., 1999, 2000, 2001, etc.                          |\n| yearTwoDigit      | 00, 01, 02, ..., 17, 18, 19, ..., 98, 99                      |\n","readmeFilename":"README.md","gitHead":"c2397d28837191a7d145806840ca6ca9a73823d4","bugs":{"url":"https://github.com/ampproject/amphtml/issues"},"_id":"@bentoproject/date-display@1.2204272205.0","_nodeVersion":"16.14.2","_npmVersion":"8.5.0","dist":{"integrity":"sha512-VE1W7lB9PFbffOpttUlBy57Cqk3o+YwKNLwNf8hU5qSmO92ihym5JUJigm1Y02Q9GLS7fL7sA6dAYFGkiAIMbA==","shasum":"d183e5178083cd8272c64a33c8ea3860a448843f","tarball":"https://registry.npmjs.org/@bentoproject/date-display/-/date-display-1.2204272205.0.tgz","fileCount":29,"unpackedSize":672045,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIEMG4i9tFy0EzvU2fw0hkqKv27ePz3vaRM1LoKhkJVIzAiBmX0H0YIyxwQ1kNSGfIWksvWauETW987FpxX58SESXCw=="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJialC1ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmozjQ/9GkJUBrN6VCPKSN1mIIcMI/K0AD3ZuMcMl0Y71pcCB0JL6ExD\r\nTfTcTZVBqs8TUZE48YEkfB7AcEy5h82SEvajXb+qA5AhGDTAdsDStObaihZH\r\n39qXD4nC17NRE0IyuCbT3dGqykqNkski4iwelklrG1qO5OfyHMBglHEFFAYX\r\n7V2+8pHlFMUpKA5BtvJPWt0fVDSnPhhiKuNsfIBv9mHFgzLTsK56HkpTYyAF\r\nsB4Q+KPVvNRmP7G1KDj9sq0ADXcOoAwszEndBY/qrQ5CE5Vup2zmPhZGlx2P\r\nJs36UU2whqtUdnoTX6uqgYa+vLQuc4RNmYYARREmzbTJ/pOLPD/KmEawL3zQ\r\nOBRaJ8hgKJJbqkFLNUQrxQC9SOcTxGmOqKZI8DaG88CMvarBi1SOEWwU02rZ\r\nB9RjRiKS/qTHu2ZUhtul4wdHa154K1x/XlQjXZKeJhhqKKy+DxuL+SzhDZPe\r\njdtPFKYpM8C5sXRrpXQYJcjd8hNEJrvBi6VZF8xp6oj+qlq8X8EqiQsByODa\r\nO4t5+4Q8qFYiR+/Kb34d+rwbsNH1dXt3DofNsLQNr/RsN7W8olW38mlCDMqz\r\nBRPCoOcT/MbqZn6Kkclhwt5w2X+DiKBGAS+SI2m8dzxN6l5+YRfuhBaUQ+hx\r\nOx5fM3Mvf1sfdNuZFXzcd9v/iTrj/jPTXD8=\r\n=HAyJ\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"bentoprojectbot","email":"bentobot@amp.dev"},"directories":{},"maintainers":[{"name":"bentoprojectbot","email":"bentobot@amp.dev"},{"name":"kristoferbaxter","email":"kbax@me.com"},{"name":"esth","email":"esther@amp.dev"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/date-display_1.2204272205.0_1651134645536_0.7192853165801099"},"_hasShrinkwrap":false},"1.2204281949.0":{"name":"@bentoproject/date-display","version":"1.2204281949.0","description":"Displays time data that you can render in your page.","author":{"name":"Bento Authors"},"license":"Apache-2.0","main":"./dist/web-component.js","module":"./dist/web-component.module.js","exports":{".":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./web-component":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./preact":{"import":"./dist/component-preact.module.js","require":"./dist/component-preact.js"},"./react":{"import":"./dist/component-react.module.js","require":"./dist/component-react.js"},"./web-component.css":"./dist/web-component.css"},"repository":{"type":"git","url":"git+https://github.com/ampproject/amphtml.git","directory":"extensions/amp-date-display/1.0"},"homepage":"https://github.com/ampproject/amphtml/tree/main/extensions/amp-date-display/1.0","peerDependencies":{"preact":"^10.2.1","react":"^17.0.0"},"dependencies":{"@bentoproject/core":"0.2204281949.0"},"readme":"# Bento Date Display\n\nDisplays time data that you can render in your page. By providing specific [attributes](#attributes) in the Bento Date Display tag, the Bento Date Display extension returns a list of time parameters, which you can pass to [an amp-mustache template](../../amp-mustache/amp-mustache.md) for rendering. Refer to the [list below for each returned time parameter](#returned-time-parameters).\n\n## Web Component\n\nYou must include each Bento component's required CSS library to guarantee proper loading and before adding custom styles. Or use the light-weight pre-upgrade styles available inline. See [Layout and style](#layout-and-style).\n\n### Example: Import via npm\n\nInstall via npm:\n\n```sh\nnpm install @bentoproject/bento-date-display\n```\n\n```javascript\nimport {defineElement as defineBentoDateDisplay} from '@bentoproject/bento-date-display';\ndefineBentoDateDisplay();\n```\n\n### Include via `<script>`\n\n```html\n<script type=\"module\" src=\"https://cdn.ampproject.org/bento.mjs\" crossorigin=\"anonymous\"></script>\n<script nomodule src=\"https://cdn.ampproject.org/bento.js\" crossorigin=\"anonymous\"></script>\n<!-- Include bento-mustache.js to use mustache templates with this component -->\n<script async src=\"https://cdn.ampproject.org/v0/bento-mustache.js\"></script>\n<script type=\"module\" src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.mjs\" crossorigin=\"anonymous\"></script>\n<script nomodule src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.js\" crossorigin=\"anonymous\"></script>\n<link rel=\"stylesheet\" href=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.css\" crossorigin=\"anonymous\">\n```\n\n### Example\n\n```html\n<!DOCTYPE html>\n<html>\n  <head>\n    <script\n      type=\"module\"\n      async\n      src=\"https://cdn.ampproject.org/bento.mjs\"\n    ></script>\n    <script nomodule src=\"https://cdn.ampproject.org/bento.js\"></script>\n    <script async src=\"https://cdn.ampproject.org/v0/bento-mustache.js\"></script>\n    <script\n      type=\"module\"\n      async\n      src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.mjs\"\n    ></script>\n    <script\n      nomodule\n      async\n      src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.js\"\n    ></script>\n    <link\n      rel=\"stylesheet\"\n      type=\"text/css\"\n      href=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.css\"\n    />\n  </head>\n  <body>\n    <bento-date-display\n      datetime=\"2021-09-09T16:02:08.494Z\"\n      displayIn=\"utc\"\n      locale=\"en-GB\"\n    >\n      <template>\n        <div>ISO: {{iso}}; locale: {{localeString}}</div>\n      </template>\n    </bento-date-display>\n  </body>\n</html>\n```\n\n### Interactivity and API usage\n\nThe Bento Date Display component does not have an imperative API. However, the Bento Date Display Web Component will render a mustache-template, provided by the consumer in a `<template>` tag with `type=\"amp-mustache\"`. This template may interpolate date-related parameters. See the [Returned Time Parameters section](#returned-time-parameters) for a full list of all the available parameters.\n\n### Layout and style\n\nEach Bento component has a small CSS library you must include to guarantee proper loading without [content shifts](https://web.dev/cls/). Because of order-based specificity, you must manually ensure that stylesheets are included before any custom styles.\n\n```html\n<link rel=\"stylesheet\" type=\"text/css\" href=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.css\">\n```\n\nAlternatively, you may also make the light-weight pre-upgrade styles available inline:\n\n```html\n<style data-bento-boilerplate>\n  bento-date-display {\n    display: block;\n    overflow: hidden;\n    position: relative;\n  }\n</style>\n```\n\n### Attributes\n\n#### `datetime`\n\nThe `datetime` attribute specifies the date and time in a standard ISO 8601 date\nstring (e.g. 2017-08-02T15:05:05.000Z) or the string `now`. If set to `now`,\n`bento-date-display` will use the time the page loaded to render its template.\n\n#### `timestamp-ms`\n\nThe `timestamp-ms` attribute specifies the date and time using the number of\nmilliseconds since 1970-01-01T0:00:00.000Z\n\n#### `timestamp-seconds`\n\nThe `timestamp-seconds` attribute specifies the date and time using the number\nof seconds since 1970-01-01T0:00:00.000Z\n\n#### `locale` (optional)\n\nAn internationalization language string for each timer unit. The default value\nis `en` (for English). This attribute supports all values that are supported by\nthe user's browser.\n\n#### `display-in` (optional)\n\nIf set to the value `utc`, the `display-in` attribute will convert the given\ndate to UTC.\n\n#### `offset-seconds` (optional)\n\nThe `offset-seconds` attribute specifies an integer number of seconds to shift\nthe given date.\n\n#### `data-options-\\*` (optional)\n\nThe `data-options-*` supports all the options under [Intl.DateTimeFormat.options](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/DateTimeFormat#parameters)\nparameter that specifies the formatting style to use for `localeString` format.\nValid attributes include: `data-options-date-style`, `data-options-time-style`, etc.\n\nNote that if `display-in` attrubute is set to `utc`, the value of\n`data-options-time-zone` will automatically be converted to `UTC`.\n\n### Styling\n\nYou may use the `bento-date-display` element selector to style the Bento Date Display component freely.\n\n---\n\n## Preact/React Component\n\n### Import via npm\n\n```sh\nnpm install @bentoproject/date-display\n```\n\n```javascript\nimport React from 'react';\nimport {BentoDateDisplay} from '@bentoproject/date-display/react';\nimport '@bentoproject/date-display/styles.css';\n\nfunction App() {\n  return (\n    <BentoDateDisplay\n      datetime={dateTime}\n      displayIn={displayIn}\n      locale={locale}\n      render={(date) => (\n        <div>{`ISO: ${date.iso}; locale: ${date.localeString}`}</div>\n      )}\n    />\n  );\n}\n```\n\n### Interactivity and API usage\n\nThe Bento Date Display component does not have an imperative API. However, the Bento Date Display Preact/React component does accept a `render` prop that renders the consumer's template. This `render` prop should be a function which the Bento Date Display Preact/React component can use to render its template. The `render` callback will be provided a variety of date-related parameters for consumers to interpolate in the rendered template. See the [`render` prop section](#render) for more information.\n\n### Layout and style\n\nThe Bento Date Display Preact/React component allows consumers to render their own templates. These templates may use inline styles, `<style>` tags, Preact/React components that import their own stylesheets.\n\n### Props\n\n#### `datetime`\n\nRequired prop. Denotes the date and time as a Date, String, or Number. If String, must be a standard ISO 8601 date string (e.g. 2017-08-02T15:05:05.000Z) or the string `now`. If set to `now`, it will use the time the page loaded to render its template. If Number, must be a POSIX epoch value in milliseconds.\n\n#### `displayIn`\n\nOptional prop that can be either `\"utc\"` or `\"local\"` and defaults to `\"local\"`. This prop indicates what timezone to display the date in. If set to the value `\"utc\"`, the component will convert the given date to UTC.\n\n#### `locale`\n\nAn internationalization language string for each timer unit. The default value is `en` (for English). This prop supports all values that are supported by the user's browser.\n\n#### `localeOptions`\n\nThe `localeOptions` object supports all the options under [Intl.DateTimeFormat.options](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/DateTimeFormat#parameters) parameter that specifies the formatting style to use for `localeString` format.\n\nNote that if the `displayIn` prop is set to `utc`, the value of `localeOptions.timeZone` will automatically be converted to `UTC`.\n\n#### `render`\n\nOptional callback that should render a template. The callback will be provided an object with properties/values related to the date expressed in `datetime`.\n\nBy default, the Bento Date Display component will display the [`localeString` form of the Date](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/toLocaleString) for the given locale and localeOption. See the [Returned Time Parameters section](#returned-time-parameters) for more details on how each property will be displayed.\n\n```typescript\n(dateParams: DateParams) => JSXInternal.Element\ninterface DateParams {\n  day: number;\n  dayName: string;\n  dayNameShort: string;\n  dayPeriod: string;\n  dayTwoDigit: string;\n  hour: number;\n  hour12: number;\n  hour12TwoDigit: string;\n  hourTwoDigit: string;\n  iso: string;\n  localeString: string;\n  minute: number;\n  minuteTwoDigit: string;\n  month: number;\n  monthName: string;\n  monthNameShort: string;\n  monthTwoDigit: string;\n  second: number;\n  secondTwoDigit: string;\n  timeZoneName: string;\n  timeZoneNameShort: string;\n  year: number;\n  yearTwoDi: string;\n}\n```\n\n### Returned Time Parameters\n\nThis table lists the format you can specify in your Mustache template:\n\n| Format            | Meaning                                                       |\n| ----------------- | ------------------------------------------------------------- |\n| day               | 1, 2, ...12, 13, etc.                                         |\n| dayName           | string,                                                       |\n| dayNameShort      | string,                                                       |\n| dayPeriod         | string,                                                       |\n| dayTwoDigit       | 01, 02, 03, ..., 12, 13, etc.                                 |\n| hour              | 0, 1, 2, 3, ..., 12, 13, ..., 22, 23                          |\n| hour12            | 1, 2, 3, ..., 12, 1, 2, ..., 11, 12                           |\n| hour12TwoDigit    | 01, 02, ..., 12, 01, 02, ..., 11, 12                          |\n| hourTwoDigit      | 00, 01, 02, ..., 12, 13, ..., 22, 23                          |\n| iso               | A standard ISO8601 date string e.g. 2019-01-23T15:31:21.213Z, |\n| localeString      | A string with a language sensitive representation.            |\n| minute            | 0, 1, 2, ..., 58, 59                                          |\n| minuteTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| month             | 1, 2, 3, ..., 12                                              |\n| monthName         | Internationalized month name string.                          |\n| monthNameShort    | Internationalized abbreviated month name string.,             |\n| monthTwoDigit     | 01, 02, ..., 11, 12                                           |\n| second            | 0, 1, 2, ..., 58, 59                                          |\n| secondTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| timeZoneName      | Internationalized timezone, like `Pacific Daylight Time`      |\n| timeZoneNameShort | Internationalized timezone, abbreviated, like `PST`           |\n| year              | 0, 1, 2, ..., 1999, 2000, 2001, etc.                          |\n| yearTwoDigit      | 00, 01, 02, ..., 17, 18, 19, ..., 98, 99                      |\n","readmeFilename":"README.md","gitHead":"8bd4749759e81fea16cc216637d7a185eea3402e","bugs":{"url":"https://github.com/ampproject/amphtml/issues"},"_id":"@bentoproject/date-display@1.2204281949.0","_nodeVersion":"16.14.2","_npmVersion":"8.5.0","dist":{"integrity":"sha512-ULF5dInR1sVgmbbo2Yl5oHKOw69NYVmxT/Z24Kf+b8+t7//rJeAZFlSNlR+06u7hxFcgTW2wTLm7x0qIgCtJgQ==","shasum":"c53fd288a0fa0777df6bd4a0526352a671c016c5","tarball":"https://registry.npmjs.org/@bentoproject/date-display/-/date-display-1.2204281949.0.tgz","fileCount":29,"unpackedSize":672045,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIATLk1XpJrYjEY7xuzuYkdqp35HYOJMoW+2O91JtHUGyAiEAqBYa4rU1ev/Rk2YqjCpiO+wY5SUnKVOJK0WQ/IlbCxo="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJia6FEACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmoqjA//UZD8bgnG6RY+djKvPSPe5+/pnFr/BuJswhSGp/sgsd1sAHnr\r\nIg/exGwbuKpaZ3Ft/3KsIKJR3E2yCwbbJNW2lFqq0l8tHI1KC7vIO6BDqsx7\r\nIn/46c6edvGI5ITCsITbCSBkC1gSM6kzxj+q/hwKu+E2BZD6PkTjSt5UCC40\r\nOSzEr6Paoa0AbsrBO/ynyTKXBzU0wazZuZv8EoctLDzAFtGJJM8pkb3akXnk\r\nu35pSITQHyKGgzsrQ2RFcuwCcsDd7HPLVKnKDE0xwYS0vgAN7sjRD6MaNvlw\r\nC8bwij/uRXgUVdRcp14hGVs7deYQs+u28Ri0dAl2DYdiU3YIaDpg7ePdAl6a\r\nuweBMlbywOOAT0um4F5NqNVUB7DmihYy1SPb1MnV4g60VnCq3SCOAvsDugEM\r\nHOOyETnNJmC8ZCeci4hsLp2P88mWr02jusC1/P+CNlHdJ7F/esayaENp/Fbq\r\nS8itvppw9uQNIAMA3G6EFK1IYqlq83qnoD2LDRugT0wGmztJHSijEXtqrlPr\r\nnLq3+X4sIDrNYUCBpXVyw1WI3K7SLeffTuqvxpiZARjWismzlOyQ+YZXrEQY\r\nC3P2RUWnKsoZafbqPrsYrYwpkJV04R1Qfjl+A5ippvpwyR8H+i5PeuW4Wdon\r\nA6yPJfQGBHEsJB1tQhy4bcUbQIxltDyxvmI=\r\n=gj9g\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"bentoprojectbot","email":"bentobot@amp.dev"},"directories":{},"maintainers":[{"name":"bentoprojectbot","email":"bentobot@amp.dev"},{"name":"kristoferbaxter","email":"kbax@me.com"},{"name":"esth","email":"esther@amp.dev"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/date-display_1.2204281949.0_1651220804045_0.6754950605112016"},"_hasShrinkwrap":false},"1.2204292129.0":{"name":"@bentoproject/date-display","version":"1.2204292129.0","description":"Displays time data that you can render in your page.","author":{"name":"Bento Authors"},"license":"Apache-2.0","main":"./dist/web-component.js","module":"./dist/web-component.module.js","exports":{".":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./web-component":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./preact":{"import":"./dist/component-preact.module.js","require":"./dist/component-preact.js"},"./react":{"import":"./dist/component-react.module.js","require":"./dist/component-react.js"},"./web-component.css":"./dist/web-component.css"},"repository":{"type":"git","url":"git+https://github.com/ampproject/amphtml.git","directory":"extensions/amp-date-display/1.0"},"homepage":"https://github.com/ampproject/amphtml/tree/main/extensions/amp-date-display/1.0","peerDependencies":{"preact":"^10.2.1","react":"^17.0.0"},"dependencies":{"@bentoproject/core":"0.2204292129.0"},"gitHead":"266c274e2aa669399dede55e9fc55b8917069279","bugs":{"url":"https://github.com/ampproject/amphtml/issues"},"_id":"@bentoproject/date-display@1.2204292129.0","_nodeVersion":"16.14.2","_npmVersion":"8.5.0","dist":{"integrity":"sha512-kq+rx7Mk3n2faSjSKqEaNPs7cOpJGJoOi/uReTQ/gzNb4eLz6LynlOCVIIf4dhJPLVjULA4WSZGVxtifj2+RYg==","shasum":"ed908dc23867a24283e2f2d14d2d331a949f926f","tarball":"https://registry.npmjs.org/@bentoproject/date-display/-/date-display-1.2204292129.0.tgz","fileCount":29,"unpackedSize":672045,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIFuG64OVFobJ+SyUeMhFu88uBfVnjRw/RprzcGd3h31DAiB/DgXXW32eSM/NGerv41j4IIUguSb2IZf1SXc+IxybYg=="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJibPJHACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqaeA//eXQMxVjGuJPy1BwCsN705505H50ZO5+lHn/x6yqzGo9E0d/f\r\n5mTovqlzhEbwf+ZZUn8i4O+Dv6jH0xVvmEau173mXQHjYItjoMfWWs65JsNn\r\nK0JtPd+Oj/Vc01J0asW2EuREo8t9eHflcVXfOa4WouHrhJpmq1A0tV5MTSwo\r\nOdz2zHgBw8nXraD30UV8lkZPAGY02zvoiVRrCm5ccbEJ545iqvoRMe9hs/lE\r\nT2MqWa0v+vy6zP3BbHVTL5Vs3fZVKkjE4NGbARYJwHkBYt7W9gbGDx4PG5Uf\r\nWvBjcpQjOOkGtRAvxUsqMoxSgrYydCyOaqiIszVPv3LPOqiU6RGOOGFUnOiY\r\nE/iDlHGOIG3Kuf2yQszKr2DMJ9me6yWEpMxo1bGWXBppu3jeb/mpG9FiDQys\r\n3kBcb0qbSbeD3Nvq1YmyiXJAywzDsBcxKhRz+pGDjA0U6nhpHuMF5qFi/znP\r\n5tw9ZTPPMdR0NHEj/O5sAS8IUVYdoa99qxHO/KlCSLI11xExU3JTJGYHmJkd\r\nmI+d0ezckWiiokLHmxYlLBrOaXZUpO/8FEOBeTA+iL8mhkZlPRMqz1I/xNk1\r\nK9VgZu1R3gyEnOPQXD0etyV1WpjfIWomplUFlPpnlbynlCRmQY5+KcfI3YWe\r\n+lM0joD20pzc6ZPY+vug0gU4k5Ww/gIhGzI=\r\n=/oA6\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"bentoprojectbot","email":"bentobot@amp.dev"},"directories":{},"maintainers":[{"name":"bentoprojectbot","email":"bentobot@amp.dev"},{"name":"kristoferbaxter","email":"kbax@me.com"},{"name":"esth","email":"esther@amp.dev"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/date-display_1.2204292129.0_1651307079560_0.9135636148118318"},"_hasShrinkwrap":false},"1.2205031420.0":{"name":"@bentoproject/date-display","version":"1.2205031420.0","description":"Displays time data that you can render in your page.","author":{"name":"Bento Authors"},"license":"Apache-2.0","main":"./dist/web-component.js","module":"./dist/web-component.module.js","exports":{".":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./web-component":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./preact":{"import":"./dist/component-preact.module.js","require":"./dist/component-preact.js"},"./react":{"import":"./dist/component-react.module.js","require":"./dist/component-react.js"},"./web-component.css":"./dist/web-component.css"},"repository":{"type":"git","url":"git+https://github.com/ampproject/amphtml.git","directory":"extensions/amp-date-display/1.0"},"homepage":"https://github.com/ampproject/amphtml/tree/main/extensions/amp-date-display/1.0","peerDependencies":{"preact":"^10.2.1","react":"^17.0.0"},"dependencies":{"@bentoproject/core":"0.2205031420.0"},"readme":"# Bento Date Display\n\nDisplays time data that you can render in your page. By providing specific [attributes](#attributes) in the Bento Date Display tag, the Bento Date Display extension returns a list of time parameters, which you can pass to [an amp-mustache template](../../amp-mustache/amp-mustache.md) for rendering. Refer to the [list below for each returned time parameter](#returned-time-parameters).\n\n## Web Component\n\nYou must include each Bento component's required CSS library to guarantee proper loading and before adding custom styles. Or use the light-weight pre-upgrade styles available inline. See [Layout and style](#layout-and-style).\n\n### Example: Import via npm\n\nInstall via npm:\n\n```sh\nnpm install @bentoproject/bento-date-display\n```\n\n```javascript\nimport {defineElement as defineBentoDateDisplay} from '@bentoproject/bento-date-display';\ndefineBentoDateDisplay();\n```\n\n### Include via `<script>`\n\n```html\n<script type=\"module\" src=\"https://cdn.ampproject.org/bento.mjs\" crossorigin=\"anonymous\"></script>\n<script nomodule src=\"https://cdn.ampproject.org/bento.js\" crossorigin=\"anonymous\"></script>\n<!-- Include bento-mustache.js to use mustache templates with this component -->\n<script async src=\"https://cdn.ampproject.org/v0/bento-mustache.js\"></script>\n<script type=\"module\" src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.mjs\" crossorigin=\"anonymous\"></script>\n<script nomodule src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.js\" crossorigin=\"anonymous\"></script>\n<link rel=\"stylesheet\" href=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.css\" crossorigin=\"anonymous\">\n```\n\n### Example\n\n```html\n<!DOCTYPE html>\n<html>\n  <head>\n    <script\n      type=\"module\"\n      async\n      src=\"https://cdn.ampproject.org/bento.mjs\"\n    ></script>\n    <script nomodule src=\"https://cdn.ampproject.org/bento.js\"></script>\n    <script async src=\"https://cdn.ampproject.org/v0/bento-mustache.js\"></script>\n    <script\n      type=\"module\"\n      async\n      src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.mjs\"\n    ></script>\n    <script\n      nomodule\n      async\n      src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.js\"\n    ></script>\n    <link\n      rel=\"stylesheet\"\n      type=\"text/css\"\n      href=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.css\"\n    />\n  </head>\n  <body>\n    <bento-date-display\n      datetime=\"2021-09-09T16:02:08.494Z\"\n      displayIn=\"utc\"\n      locale=\"en-GB\"\n    >\n      <template>\n        <div>ISO: {{iso}}; locale: {{localeString}}</div>\n      </template>\n    </bento-date-display>\n  </body>\n</html>\n```\n\n### Interactivity and API usage\n\nThe Bento Date Display component does not have an imperative API. However, the Bento Date Display Web Component will render a mustache-template, provided by the consumer in a `<template>` tag with `type=\"amp-mustache\"`. This template may interpolate date-related parameters. See the [Returned Time Parameters section](#returned-time-parameters) for a full list of all the available parameters.\n\n### Layout and style\n\nEach Bento component has a small CSS library you must include to guarantee proper loading without [content shifts](https://web.dev/cls/). Because of order-based specificity, you must manually ensure that stylesheets are included before any custom styles.\n\n```html\n<link rel=\"stylesheet\" type=\"text/css\" href=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.css\">\n```\n\nAlternatively, you may also make the light-weight pre-upgrade styles available inline:\n\n```html\n<style data-bento-boilerplate>\n  bento-date-display {\n    display: block;\n    overflow: hidden;\n    position: relative;\n  }\n</style>\n```\n\n### Attributes\n\n#### `datetime`\n\nThe `datetime` attribute specifies the date and time in a standard ISO 8601 date\nstring (e.g. 2017-08-02T15:05:05.000Z) or the string `now`. If set to `now`,\n`bento-date-display` will use the time the page loaded to render its template.\n\n#### `timestamp-ms`\n\nThe `timestamp-ms` attribute specifies the date and time using the number of\nmilliseconds since 1970-01-01T0:00:00.000Z\n\n#### `timestamp-seconds`\n\nThe `timestamp-seconds` attribute specifies the date and time using the number\nof seconds since 1970-01-01T0:00:00.000Z\n\n#### `locale` (optional)\n\nAn internationalization language string for each timer unit. The default value\nis `en` (for English). This attribute supports all values that are supported by\nthe user's browser.\n\n#### `display-in` (optional)\n\nIf set to the value `utc`, the `display-in` attribute will convert the given\ndate to UTC.\n\n#### `offset-seconds` (optional)\n\nThe `offset-seconds` attribute specifies an integer number of seconds to shift\nthe given date.\n\n#### `data-options-\\*` (optional)\n\nThe `data-options-*` supports all the options under [Intl.DateTimeFormat.options](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/DateTimeFormat#parameters)\nparameter that specifies the formatting style to use for `localeString` format.\nValid attributes include: `data-options-date-style`, `data-options-time-style`, etc.\n\nNote that if `display-in` attrubute is set to `utc`, the value of\n`data-options-time-zone` will automatically be converted to `UTC`.\n\n### Styling\n\nYou may use the `bento-date-display` element selector to style the Bento Date Display component freely.\n\n---\n\n## Preact/React Component\n\n### Import via npm\n\n```sh\nnpm install @bentoproject/date-display\n```\n\n```javascript\nimport React from 'react';\nimport {BentoDateDisplay} from '@bentoproject/date-display/react';\nimport '@bentoproject/date-display/styles.css';\n\nfunction App() {\n  return (\n    <BentoDateDisplay\n      datetime={dateTime}\n      displayIn={displayIn}\n      locale={locale}\n      render={(date) => (\n        <div>{`ISO: ${date.iso}; locale: ${date.localeString}`}</div>\n      )}\n    />\n  );\n}\n```\n\n### Interactivity and API usage\n\nThe Bento Date Display component does not have an imperative API. However, the Bento Date Display Preact/React component does accept a `render` prop that renders the consumer's template. This `render` prop should be a function which the Bento Date Display Preact/React component can use to render its template. The `render` callback will be provided a variety of date-related parameters for consumers to interpolate in the rendered template. See the [`render` prop section](#render) for more information.\n\n### Layout and style\n\nThe Bento Date Display Preact/React component allows consumers to render their own templates. These templates may use inline styles, `<style>` tags, Preact/React components that import their own stylesheets.\n\n### Props\n\n#### `datetime`\n\nRequired prop. Denotes the date and time as a Date, String, or Number. If String, must be a standard ISO 8601 date string (e.g. 2017-08-02T15:05:05.000Z) or the string `now`. If set to `now`, it will use the time the page loaded to render its template. If Number, must be a POSIX epoch value in milliseconds.\n\n#### `displayIn`\n\nOptional prop that can be either `\"utc\"` or `\"local\"` and defaults to `\"local\"`. This prop indicates what timezone to display the date in. If set to the value `\"utc\"`, the component will convert the given date to UTC.\n\n#### `locale`\n\nAn internationalization language string for each timer unit. The default value is `en` (for English). This prop supports all values that are supported by the user's browser.\n\n#### `localeOptions`\n\nThe `localeOptions` object supports all the options under [Intl.DateTimeFormat.options](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/DateTimeFormat#parameters) parameter that specifies the formatting style to use for `localeString` format.\n\nNote that if the `displayIn` prop is set to `utc`, the value of `localeOptions.timeZone` will automatically be converted to `UTC`.\n\n#### `render`\n\nOptional callback that should render a template. The callback will be provided an object with properties/values related to the date expressed in `datetime`.\n\nBy default, the Bento Date Display component will display the [`localeString` form of the Date](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/toLocaleString) for the given locale and localeOption. See the [Returned Time Parameters section](#returned-time-parameters) for more details on how each property will be displayed.\n\n```typescript\n(dateParams: DateParams) => JSXInternal.Element\ninterface DateParams {\n  day: number;\n  dayName: string;\n  dayNameShort: string;\n  dayPeriod: string;\n  dayTwoDigit: string;\n  hour: number;\n  hour12: number;\n  hour12TwoDigit: string;\n  hourTwoDigit: string;\n  iso: string;\n  localeString: string;\n  minute: number;\n  minuteTwoDigit: string;\n  month: number;\n  monthName: string;\n  monthNameShort: string;\n  monthTwoDigit: string;\n  second: number;\n  secondTwoDigit: string;\n  timeZoneName: string;\n  timeZoneNameShort: string;\n  year: number;\n  yearTwoDi: string;\n}\n```\n\n### Returned Time Parameters\n\nThis table lists the format you can specify in your Mustache template:\n\n| Format            | Meaning                                                       |\n| ----------------- | ------------------------------------------------------------- |\n| day               | 1, 2, ...12, 13, etc.                                         |\n| dayName           | string,                                                       |\n| dayNameShort      | string,                                                       |\n| dayPeriod         | string,                                                       |\n| dayTwoDigit       | 01, 02, 03, ..., 12, 13, etc.                                 |\n| hour              | 0, 1, 2, 3, ..., 12, 13, ..., 22, 23                          |\n| hour12            | 1, 2, 3, ..., 12, 1, 2, ..., 11, 12                           |\n| hour12TwoDigit    | 01, 02, ..., 12, 01, 02, ..., 11, 12                          |\n| hourTwoDigit      | 00, 01, 02, ..., 12, 13, ..., 22, 23                          |\n| iso               | A standard ISO8601 date string e.g. 2019-01-23T15:31:21.213Z, |\n| localeString      | A string with a language sensitive representation.            |\n| minute            | 0, 1, 2, ..., 58, 59                                          |\n| minuteTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| month             | 1, 2, 3, ..., 12                                              |\n| monthName         | Internationalized month name string.                          |\n| monthNameShort    | Internationalized abbreviated month name string.,             |\n| monthTwoDigit     | 01, 02, ..., 11, 12                                           |\n| second            | 0, 1, 2, ..., 58, 59                                          |\n| secondTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| timeZoneName      | Internationalized timezone, like `Pacific Daylight Time`      |\n| timeZoneNameShort | Internationalized timezone, abbreviated, like `PST`           |\n| year              | 0, 1, 2, ..., 1999, 2000, 2001, etc.                          |\n| yearTwoDigit      | 00, 01, 02, ..., 17, 18, 19, ..., 98, 99                      |\n","readmeFilename":"README.md","gitHead":"d3652194dae7f17865db127c7135ec194907b7fb","bugs":{"url":"https://github.com/ampproject/amphtml/issues"},"_id":"@bentoproject/date-display@1.2205031420.0","_nodeVersion":"16.14.2","_npmVersion":"8.5.0","dist":{"integrity":"sha512-DeWryhxVoR3mWhFqfRjoYaOAPh8TzSAUQMpCxICEcdmbv0wlQbnEpyWBOHRAzaKBHvMuh9/wIp0UcSDOUZcveg==","shasum":"f1a6e9959396e9b45e7b3ca0b1c03ea64eae3fe0","tarball":"https://registry.npmjs.org/@bentoproject/date-display/-/date-display-1.2205031420.0.tgz","fileCount":29,"unpackedSize":672045,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCICQKQ5BqhwxRraEE+i/GCZAHQ81CHdWsf7b2iF8CjsO8AiEAzztwQlfzE5Fi68TKwHP7OKPk5HGrHbuSKGd5bdXLbfk="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJicjiIACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpaMw/+OIw5/VByH8opAgwlyo7Z7xjohLjSu9NGebxroNr6INalNhhG\r\nhQiHKqA7vEXlBi2zZK4ajjwFPGEYHqLRHFHSy3oWA/W+gjFwQxT/9G9QN6MZ\r\nYYcoPp+lFo7CSYAFm3JcLK95bEDxvVyp4X4V3zNcxe0W9K0kNug1Ue1QYnMU\r\n654Tu8pP8RUKZDUdKbeQdoirN2/iJSHEhB/k5dNsN8nyTwnMVTFQLUiNBih2\r\nrGLOV7jo4brClgYNndy7+/uePdelsva5dWuxHOq+U9khtOPZsWZdNvkxkTMe\r\nBZvjUNNASHbXbCWwujULDIyt5YUGOr/czf5JRsqpJ5hcOWVcTA3xfkbAjewk\r\nSB1mtSi63vy3RsZ2X9z5gkEPd5VAR6585P04DCWsIVPXIABMam5eXjM9t7lh\r\nAMDH6eY7YbyBu9aN1WpotWih8VFC6CJax4qD2C6f+33mO81v0sQsB0a08nJq\r\n6b1TRkpsbRZ8JjSq418RZYE5Ygd4dkMYOVC/Ltr2b+1f1au1DPgElYWRgdA4\r\nc91tn68+O9px/RLOP8yJXQ1cDvTxU/2kc3xJu1cX3Bv8zO/iGkmWlGShEpET\r\nORtl0c+sahSmwPmDl2JAKf0zUG7pP+bDPhho0h8p9Cpe9TYyc9aFTnt34mFd\r\nUlhEVGYqUH7OCIWtpvWmnO5ecFcHCKKRsmc=\r\n=vaZL\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"bentoprojectbot","email":"bentobot@amp.dev"},"directories":{},"maintainers":[{"name":"bentoprojectbot","email":"bentobot@amp.dev"},{"name":"kristoferbaxter","email":"kbax@me.com"},{"name":"esth","email":"esther@amp.dev"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/date-display_1.2205031420.0_1651652744345_0.7430237745428343"},"_hasShrinkwrap":false},"1.2205041533.0":{"name":"@bentoproject/date-display","version":"1.2205041533.0","description":"Displays time data that you can render in your page.","author":{"name":"Bento Authors"},"license":"Apache-2.0","main":"./dist/web-component.js","module":"./dist/web-component.module.js","exports":{".":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./web-component":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./preact":{"import":"./dist/component-preact.module.js","require":"./dist/component-preact.js"},"./react":{"import":"./dist/component-react.module.js","require":"./dist/component-react.js"},"./web-component.css":"./dist/web-component.css"},"repository":{"type":"git","url":"git+https://github.com/ampproject/amphtml.git","directory":"extensions/amp-date-display/1.0"},"homepage":"https://github.com/ampproject/amphtml/tree/main/extensions/amp-date-display/1.0","peerDependencies":{"preact":"^10.2.1","react":"^17.0.0"},"dependencies":{"@bentoproject/core":"0.2205041533.0"},"readme":"# Bento Date Display\n\nDisplays time data that you can render in your page. By providing specific [attributes](#attributes) in the Bento Date Display tag, the Bento Date Display extension returns a list of time parameters, which you can pass to [an amp-mustache template](../../amp-mustache/amp-mustache.md) for rendering. Refer to the [list below for each returned time parameter](#returned-time-parameters).\n\n## Web Component\n\nYou must include each Bento component's required CSS library to guarantee proper loading and before adding custom styles. Or use the light-weight pre-upgrade styles available inline. See [Layout and style](#layout-and-style).\n\n### Example: Import via npm\n\nInstall via npm:\n\n```sh\nnpm install @bentoproject/bento-date-display\n```\n\n```javascript\nimport {defineElement as defineBentoDateDisplay} from '@bentoproject/bento-date-display';\ndefineBentoDateDisplay();\n```\n\n### Include via `<script>`\n\n```html\n<script type=\"module\" src=\"https://cdn.ampproject.org/bento.mjs\" crossorigin=\"anonymous\"></script>\n<script nomodule src=\"https://cdn.ampproject.org/bento.js\" crossorigin=\"anonymous\"></script>\n<!-- Include bento-mustache.js to use mustache templates with this component -->\n<script async src=\"https://cdn.ampproject.org/v0/bento-mustache.js\"></script>\n<script type=\"module\" src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.mjs\" crossorigin=\"anonymous\"></script>\n<script nomodule src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.js\" crossorigin=\"anonymous\"></script>\n<link rel=\"stylesheet\" href=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.css\" crossorigin=\"anonymous\">\n```\n\n### Example\n\n```html\n<!DOCTYPE html>\n<html>\n  <head>\n    <script\n      type=\"module\"\n      async\n      src=\"https://cdn.ampproject.org/bento.mjs\"\n    ></script>\n    <script nomodule src=\"https://cdn.ampproject.org/bento.js\"></script>\n    <script async src=\"https://cdn.ampproject.org/v0/bento-mustache.js\"></script>\n    <script\n      type=\"module\"\n      async\n      src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.mjs\"\n    ></script>\n    <script\n      nomodule\n      async\n      src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.js\"\n    ></script>\n    <link\n      rel=\"stylesheet\"\n      type=\"text/css\"\n      href=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.css\"\n    />\n  </head>\n  <body>\n    <bento-date-display\n      datetime=\"2021-09-09T16:02:08.494Z\"\n      displayIn=\"utc\"\n      locale=\"en-GB\"\n    >\n      <template>\n        <div>ISO: {{iso}}; locale: {{localeString}}</div>\n      </template>\n    </bento-date-display>\n  </body>\n</html>\n```\n\n### Interactivity and API usage\n\nThe Bento Date Display component does not have an imperative API. However, the Bento Date Display Web Component will render a mustache-template, provided by the consumer in a `<template>` tag with `type=\"amp-mustache\"`. This template may interpolate date-related parameters. See the [Returned Time Parameters section](#returned-time-parameters) for a full list of all the available parameters.\n\n### Layout and style\n\nEach Bento component has a small CSS library you must include to guarantee proper loading without [content shifts](https://web.dev/cls/). Because of order-based specificity, you must manually ensure that stylesheets are included before any custom styles.\n\n```html\n<link rel=\"stylesheet\" type=\"text/css\" href=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.css\">\n```\n\nAlternatively, you may also make the light-weight pre-upgrade styles available inline:\n\n```html\n<style data-bento-boilerplate>\n  bento-date-display {\n    display: block;\n    overflow: hidden;\n    position: relative;\n  }\n</style>\n```\n\n### Attributes\n\n#### `datetime`\n\nThe `datetime` attribute specifies the date and time in a standard ISO 8601 date\nstring (e.g. 2017-08-02T15:05:05.000Z) or the string `now`. If set to `now`,\n`bento-date-display` will use the time the page loaded to render its template.\n\n#### `timestamp-ms`\n\nThe `timestamp-ms` attribute specifies the date and time using the number of\nmilliseconds since 1970-01-01T0:00:00.000Z\n\n#### `timestamp-seconds`\n\nThe `timestamp-seconds` attribute specifies the date and time using the number\nof seconds since 1970-01-01T0:00:00.000Z\n\n#### `locale` (optional)\n\nAn internationalization language string for each timer unit. The default value\nis `en` (for English). This attribute supports all values that are supported by\nthe user's browser.\n\n#### `display-in` (optional)\n\nIf set to the value `utc`, the `display-in` attribute will convert the given\ndate to UTC.\n\n#### `offset-seconds` (optional)\n\nThe `offset-seconds` attribute specifies an integer number of seconds to shift\nthe given date.\n\n#### `data-options-\\*` (optional)\n\nThe `data-options-*` supports all the options under [Intl.DateTimeFormat.options](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/DateTimeFormat#parameters)\nparameter that specifies the formatting style to use for `localeString` format.\nValid attributes include: `data-options-date-style`, `data-options-time-style`, etc.\n\nNote that if `display-in` attrubute is set to `utc`, the value of\n`data-options-time-zone` will automatically be converted to `UTC`.\n\n### Styling\n\nYou may use the `bento-date-display` element selector to style the Bento Date Display component freely.\n\n---\n\n## Preact/React Component\n\n### Import via npm\n\n```sh\nnpm install @bentoproject/date-display\n```\n\n```javascript\nimport React from 'react';\nimport {BentoDateDisplay} from '@bentoproject/date-display/react';\nimport '@bentoproject/date-display/styles.css';\n\nfunction App() {\n  return (\n    <BentoDateDisplay\n      datetime={dateTime}\n      displayIn={displayIn}\n      locale={locale}\n      render={(date) => (\n        <div>{`ISO: ${date.iso}; locale: ${date.localeString}`}</div>\n      )}\n    />\n  );\n}\n```\n\n### Interactivity and API usage\n\nThe Bento Date Display component does not have an imperative API. However, the Bento Date Display Preact/React component does accept a `render` prop that renders the consumer's template. This `render` prop should be a function which the Bento Date Display Preact/React component can use to render its template. The `render` callback will be provided a variety of date-related parameters for consumers to interpolate in the rendered template. See the [`render` prop section](#render) for more information.\n\n### Layout and style\n\nThe Bento Date Display Preact/React component allows consumers to render their own templates. These templates may use inline styles, `<style>` tags, Preact/React components that import their own stylesheets.\n\n### Props\n\n#### `datetime`\n\nRequired prop. Denotes the date and time as a Date, String, or Number. If String, must be a standard ISO 8601 date string (e.g. 2017-08-02T15:05:05.000Z) or the string `now`. If set to `now`, it will use the time the page loaded to render its template. If Number, must be a POSIX epoch value in milliseconds.\n\n#### `displayIn`\n\nOptional prop that can be either `\"utc\"` or `\"local\"` and defaults to `\"local\"`. This prop indicates what timezone to display the date in. If set to the value `\"utc\"`, the component will convert the given date to UTC.\n\n#### `locale`\n\nAn internationalization language string for each timer unit. The default value is `en` (for English). This prop supports all values that are supported by the user's browser.\n\n#### `localeOptions`\n\nThe `localeOptions` object supports all the options under [Intl.DateTimeFormat.options](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/DateTimeFormat#parameters) parameter that specifies the formatting style to use for `localeString` format.\n\nNote that if the `displayIn` prop is set to `utc`, the value of `localeOptions.timeZone` will automatically be converted to `UTC`.\n\n#### `render`\n\nOptional callback that should render a template. The callback will be provided an object with properties/values related to the date expressed in `datetime`.\n\nBy default, the Bento Date Display component will display the [`localeString` form of the Date](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/toLocaleString) for the given locale and localeOption. See the [Returned Time Parameters section](#returned-time-parameters) for more details on how each property will be displayed.\n\n```typescript\n(dateParams: DateParams) => JSXInternal.Element\ninterface DateParams {\n  day: number;\n  dayName: string;\n  dayNameShort: string;\n  dayPeriod: string;\n  dayTwoDigit: string;\n  hour: number;\n  hour12: number;\n  hour12TwoDigit: string;\n  hourTwoDigit: string;\n  iso: string;\n  localeString: string;\n  minute: number;\n  minuteTwoDigit: string;\n  month: number;\n  monthName: string;\n  monthNameShort: string;\n  monthTwoDigit: string;\n  second: number;\n  secondTwoDigit: string;\n  timeZoneName: string;\n  timeZoneNameShort: string;\n  year: number;\n  yearTwoDi: string;\n}\n```\n\n### Returned Time Parameters\n\nThis table lists the format you can specify in your Mustache template:\n\n| Format            | Meaning                                                       |\n| ----------------- | ------------------------------------------------------------- |\n| day               | 1, 2, ...12, 13, etc.                                         |\n| dayName           | string,                                                       |\n| dayNameShort      | string,                                                       |\n| dayPeriod         | string,                                                       |\n| dayTwoDigit       | 01, 02, 03, ..., 12, 13, etc.                                 |\n| hour              | 0, 1, 2, 3, ..., 12, 13, ..., 22, 23                          |\n| hour12            | 1, 2, 3, ..., 12, 1, 2, ..., 11, 12                           |\n| hour12TwoDigit    | 01, 02, ..., 12, 01, 02, ..., 11, 12                          |\n| hourTwoDigit      | 00, 01, 02, ..., 12, 13, ..., 22, 23                          |\n| iso               | A standard ISO8601 date string e.g. 2019-01-23T15:31:21.213Z, |\n| localeString      | A string with a language sensitive representation.            |\n| minute            | 0, 1, 2, ..., 58, 59                                          |\n| minuteTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| month             | 1, 2, 3, ..., 12                                              |\n| monthName         | Internationalized month name string.                          |\n| monthNameShort    | Internationalized abbreviated month name string.,             |\n| monthTwoDigit     | 01, 02, ..., 11, 12                                           |\n| second            | 0, 1, 2, ..., 58, 59                                          |\n| secondTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| timeZoneName      | Internationalized timezone, like `Pacific Daylight Time`      |\n| timeZoneNameShort | Internationalized timezone, abbreviated, like `PST`           |\n| year              | 0, 1, 2, ..., 1999, 2000, 2001, etc.                          |\n| yearTwoDigit      | 00, 01, 02, ..., 17, 18, 19, ..., 98, 99                      |\n","readmeFilename":"README.md","gitHead":"8c9c66c7b1ace99b28d77b82807f84e9e8cb305b","bugs":{"url":"https://github.com/ampproject/amphtml/issues"},"_id":"@bentoproject/date-display@1.2205041533.0","_nodeVersion":"16.14.2","_npmVersion":"8.5.0","dist":{"integrity":"sha512-N0prFTzmh2NZJB9XtK8IX5ud51qFHZHkjC0Sa+SbJQttZ+iqRcRPK9Gm50CG4USj+Df0jn0GINqbyABktROWVg==","shasum":"be17ea52ef632a204516c9881b9811eb75852fec","tarball":"https://registry.npmjs.org/@bentoproject/date-display/-/date-display-1.2205041533.0.tgz","fileCount":29,"unpackedSize":672045,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCICMHzRGffxhDnq+81zOSEKodhN/Xg/2/ZuY3pHp3KPzSAiAxoc0A1hyXe8O6bp5FBUdHHpCYTIACAKHAyXK72wNI3A=="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJic4oSACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmoF5Q/+JIGk/VIl3o4Z2m2DiU4wcI2505NNe3KvP730cbvchbBuqUh9\r\ncg3dW+XPCirJ3+70fLwsdz+cdPwcDYaslINDSCkfmAiPIpJHEOokpSPaQKQo\r\n5Ka2AUMnDwyIKr/vykBtgP+5URIZ71CMs96tCcNJeSniuFFRlA8Aht96+3jT\r\nhAiJ6BSAoSB6gv60hcdIE5TUWVFYueCCWAPOyj56NJMDFgYU+Uod7XHpuKqZ\r\nNadeM/ndxIr0SlU/uugQX2B8dXJl6TD07oOBPBaQK/Z6lOw3VACWpvcPvtRX\r\nlg9PouT+ZRQEAmLpjcSjEVm/Uj1n4aw4k3H+df6m1uj/06gFC4iiI5qlaWQ1\r\nZtdZAYMs30YQP6dLGgmQxm81lQ9PL7SKo9HToU3JSyC46gvfMszbTyG0s70r\r\nXK9ZFLYTs+ybB95N2/O9Jt1v/6QyOB8Jc10Al9anRzaoIbNbl8q8O1v4rbfO\r\nKo4fN7HRWFwEM7UF7o7d6tuIH4rYNFx5nabIOhfalF3EADw8/h6K6Mz5i7u6\r\n1w9vbVC1OtQqdvMTkClpsoFMA7fkuWD/SVLz7/2lnieHdXfAs38C+p2z2iue\r\nT7yfTlW32cJiujIuy6jKgKn0G9FjIXtMunzlW09Y8BVtXgTrB9psxNoZArIF\r\n7rT9aa70sYseOLyfukkL+sUUiwgeKlE5l5k=\r\n=Dtv2\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"bentoprojectbot","email":"bentobot@amp.dev"},"directories":{},"maintainers":[{"name":"bentoprojectbot","email":"bentobot@amp.dev"},{"name":"kristoferbaxter","email":"kbax@me.com"},{"name":"esth","email":"esther@amp.dev"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/date-display_1.2205041533.0_1651739153739_0.3646641462738873"},"_hasShrinkwrap":false},"1.2205051832.0":{"name":"@bentoproject/date-display","version":"1.2205051832.0","description":"Displays time data that you can render in your page.","author":{"name":"Bento Authors"},"license":"Apache-2.0","main":"./dist/web-component.js","module":"./dist/web-component.module.js","exports":{".":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./web-component":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./preact":{"import":"./dist/component-preact.module.js","require":"./dist/component-preact.js"},"./react":{"import":"./dist/component-react.module.js","require":"./dist/component-react.js"},"./web-component.css":"./dist/web-component.css"},"repository":{"type":"git","url":"git+https://github.com/ampproject/amphtml.git","directory":"extensions/amp-date-display/1.0"},"homepage":"https://github.com/ampproject/amphtml/tree/main/extensions/amp-date-display/1.0","peerDependencies":{"preact":"^10.2.1","react":"^17.0.0"},"dependencies":{"@bentoproject/core":"0.2205051832.0"},"gitHead":"3658b8bf865c7e71c605f93088560c0657af9cb4","bugs":{"url":"https://github.com/ampproject/amphtml/issues"},"_id":"@bentoproject/date-display@1.2205051832.0","_nodeVersion":"16.15.0","_npmVersion":"8.5.5","dist":{"integrity":"sha512-PghaAV0/VbjDbggAHDikLGVBOugNdGgpwbDMME+c2gjVWSj63XN2icri3ZqtkY8mMj2tNqQYLwjzCq8hqfjmuQ==","shasum":"552a5293ce5dc6fc273188eb5c9e22bc8901cbb7","tarball":"https://registry.npmjs.org/@bentoproject/date-display/-/date-display-1.2205051832.0.tgz","fileCount":29,"unpackedSize":672045,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDOUp5edjKyfBuXBkoRRiPFaBF7+j4bGT7rgTU6iQmgvgIhAIGXF9xqLqBPnHWzF3Gs0s7riNndOCP6RsR5pkwG99B7"}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJidNteACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrFzw/5AYsw8KZq4zGz/eDtmUGEG5p3h3M33tOZUkOivXcNSFX2fynD\r\nY8QmXN2gyRtj24xWYqZWbH60H1mGqKkptoZMBWRCpY5N3YuSkWa/Q3mBi+Xs\r\n138+pnpBgvaYrK6SaBSANt/kJuvqPj7bppfRjqv0556BXXSRd9rf9mxIxGMO\r\nmL3E6/CML+21KwQN03PST4u2SxDPeSjNb64f0eiqXe76qR5HAYQgi2qnIO/M\r\n9cjs1O4Lf09Hc/EzVq7j4wFIH1nXlhjJzkOtadTQa9xOfVGSjO5/IokF/KQt\r\nZYQaf9WB6ULGgKaLef5Mu4kF+kAYLczDDEBl6wMv11EdzZNhbtTrJ5XX/Juk\r\n35L3W+MW+Zq7M7XkzmgSbRr94cOKnqEg3AATLy26qVheFsBAu1M6uOHquYGp\r\nvr2YSsqMNBozwAsn2hkGwmRrqAGFzuwXU0C9pAFg/Bhe8Ykzg1mtIXHlXprV\r\nXkIydRvq6Np8H1/E6lSmxbeLAi4Bbkioadl9ejaatZ9uimkGshH31qtiY6IK\r\nI/EbPREHpmVFIqYYCw+OmFVRfGz0Q1sg7BlrGbg4dcrf3qvbGmZdwiRKd3LE\r\n4sJyfRdz0YZTQreXT7ZjOyDRN3P4i4p/0V3ZZ2gD1vAcNPRH3RPqVnizW3R+\r\n9FZx+oGQI6An6AMTSg0wDIoEAjfDCk1NJtU=\r\n=wO8R\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"bentoprojectbot","email":"bentobot@amp.dev"},"directories":{},"maintainers":[{"name":"bentoprojectbot","email":"bentobot@amp.dev"},{"name":"kristoferbaxter","email":"kbax@me.com"},{"name":"esth","email":"esther@amp.dev"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/date-display_1.2205051832.0_1651825502727_0.3561694010414891"},"_hasShrinkwrap":false},"1.2205090810.0":{"name":"@bentoproject/date-display","version":"1.2205090810.0","description":"Displays time data that you can render in your page.","author":{"name":"Bento Authors"},"license":"Apache-2.0","main":"./dist/web-component.js","module":"./dist/web-component.module.js","exports":{".":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./web-component":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./preact":{"import":"./dist/component-preact.module.js","require":"./dist/component-preact.js"},"./react":{"import":"./dist/component-react.module.js","require":"./dist/component-react.js"},"./web-component.css":"./dist/web-component.css"},"repository":{"type":"git","url":"git+https://github.com/ampproject/amphtml.git","directory":"extensions/amp-date-display/1.0"},"homepage":"https://github.com/ampproject/amphtml/tree/main/extensions/amp-date-display/1.0","peerDependencies":{"preact":"^10.2.1","react":"^17.0.0"},"dependencies":{"@bentoproject/core":"0.2205090810.0"},"readme":"# Bento Date Display\n\nDisplays time data that you can render in your page. By providing specific [attributes](#attributes) in the Bento Date Display tag, the Bento Date Display extension returns a list of time parameters, which you can pass to [an amp-mustache template](../../amp-mustache/amp-mustache.md) for rendering. Refer to the [list below for each returned time parameter](#returned-time-parameters).\n\n## Web Component\n\nYou must include each Bento component's required CSS library to guarantee proper loading and before adding custom styles. Or use the light-weight pre-upgrade styles available inline. See [Layout and style](#layout-and-style).\n\n### Example: Import via npm\n\nInstall via npm:\n\n```sh\nnpm install @bentoproject/bento-date-display\n```\n\n```javascript\nimport {defineElement as defineBentoDateDisplay} from '@bentoproject/bento-date-display';\ndefineBentoDateDisplay();\n```\n\n### Include via `<script>`\n\n```html\n<script type=\"module\" src=\"https://cdn.ampproject.org/bento.mjs\" crossorigin=\"anonymous\"></script>\n<script nomodule src=\"https://cdn.ampproject.org/bento.js\" crossorigin=\"anonymous\"></script>\n<!-- Include bento-mustache.js to use mustache templates with this component -->\n<script async src=\"https://cdn.ampproject.org/v0/bento-mustache.js\"></script>\n<script type=\"module\" src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.mjs\" crossorigin=\"anonymous\"></script>\n<script nomodule src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.js\" crossorigin=\"anonymous\"></script>\n<link rel=\"stylesheet\" href=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.css\" crossorigin=\"anonymous\">\n```\n\n### Example\n\n```html\n<!DOCTYPE html>\n<html>\n  <head>\n    <script\n      type=\"module\"\n      async\n      src=\"https://cdn.ampproject.org/bento.mjs\"\n    ></script>\n    <script nomodule src=\"https://cdn.ampproject.org/bento.js\"></script>\n    <script async src=\"https://cdn.ampproject.org/v0/bento-mustache.js\"></script>\n    <script\n      type=\"module\"\n      async\n      src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.mjs\"\n    ></script>\n    <script\n      nomodule\n      async\n      src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.js\"\n    ></script>\n    <link\n      rel=\"stylesheet\"\n      type=\"text/css\"\n      href=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.css\"\n    />\n  </head>\n  <body>\n    <bento-date-display\n      datetime=\"2021-09-09T16:02:08.494Z\"\n      displayIn=\"utc\"\n      locale=\"en-GB\"\n    >\n      <template>\n        <div>ISO: {{iso}}; locale: {{localeString}}</div>\n      </template>\n    </bento-date-display>\n  </body>\n</html>\n```\n\n### Interactivity and API usage\n\nThe Bento Date Display component does not have an imperative API. However, the Bento Date Display Web Component will render a mustache-template, provided by the consumer in a `<template>` tag with `type=\"amp-mustache\"`. This template may interpolate date-related parameters. See the [Returned Time Parameters section](#returned-time-parameters) for a full list of all the available parameters.\n\n### Layout and style\n\nEach Bento component has a small CSS library you must include to guarantee proper loading without [content shifts](https://web.dev/cls/). Because of order-based specificity, you must manually ensure that stylesheets are included before any custom styles.\n\n```html\n<link rel=\"stylesheet\" type=\"text/css\" href=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.css\">\n```\n\nAlternatively, you may also make the light-weight pre-upgrade styles available inline:\n\n```html\n<style data-bento-boilerplate>\n  bento-date-display {\n    display: block;\n    overflow: hidden;\n    position: relative;\n  }\n</style>\n```\n\n### Attributes\n\n#### `datetime`\n\nThe `datetime` attribute specifies the date and time in a standard ISO 8601 date\nstring (e.g. 2017-08-02T15:05:05.000Z) or the string `now`. If set to `now`,\n`bento-date-display` will use the time the page loaded to render its template.\n\n#### `timestamp-ms`\n\nThe `timestamp-ms` attribute specifies the date and time using the number of\nmilliseconds since 1970-01-01T0:00:00.000Z\n\n#### `timestamp-seconds`\n\nThe `timestamp-seconds` attribute specifies the date and time using the number\nof seconds since 1970-01-01T0:00:00.000Z\n\n#### `locale` (optional)\n\nAn internationalization language string for each timer unit. The default value\nis `en` (for English). This attribute supports all values that are supported by\nthe user's browser.\n\n#### `display-in` (optional)\n\nIf set to the value `utc`, the `display-in` attribute will convert the given\ndate to UTC.\n\n#### `offset-seconds` (optional)\n\nThe `offset-seconds` attribute specifies an integer number of seconds to shift\nthe given date.\n\n#### `data-options-\\*` (optional)\n\nThe `data-options-*` supports all the options under [Intl.DateTimeFormat.options](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/DateTimeFormat#parameters)\nparameter that specifies the formatting style to use for `localeString` format.\nValid attributes include: `data-options-date-style`, `data-options-time-style`, etc.\n\nNote that if `display-in` attrubute is set to `utc`, the value of\n`data-options-time-zone` will automatically be converted to `UTC`.\n\n### Styling\n\nYou may use the `bento-date-display` element selector to style the Bento Date Display component freely.\n\n---\n\n## Preact/React Component\n\n### Import via npm\n\n```sh\nnpm install @bentoproject/date-display\n```\n\n```javascript\nimport React from 'react';\nimport {BentoDateDisplay} from '@bentoproject/date-display/react';\nimport '@bentoproject/date-display/styles.css';\n\nfunction App() {\n  return (\n    <BentoDateDisplay\n      datetime={dateTime}\n      displayIn={displayIn}\n      locale={locale}\n      render={(date) => (\n        <div>{`ISO: ${date.iso}; locale: ${date.localeString}`}</div>\n      )}\n    />\n  );\n}\n```\n\n### Interactivity and API usage\n\nThe Bento Date Display component does not have an imperative API. However, the Bento Date Display Preact/React component does accept a `render` prop that renders the consumer's template. This `render` prop should be a function which the Bento Date Display Preact/React component can use to render its template. The `render` callback will be provided a variety of date-related parameters for consumers to interpolate in the rendered template. See the [`render` prop section](#render) for more information.\n\n### Layout and style\n\nThe Bento Date Display Preact/React component allows consumers to render their own templates. These templates may use inline styles, `<style>` tags, Preact/React components that import their own stylesheets.\n\n### Props\n\n#### `datetime`\n\nRequired prop. Denotes the date and time as a Date, String, or Number. If String, must be a standard ISO 8601 date string (e.g. 2017-08-02T15:05:05.000Z) or the string `now`. If set to `now`, it will use the time the page loaded to render its template. If Number, must be a POSIX epoch value in milliseconds.\n\n#### `displayIn`\n\nOptional prop that can be either `\"utc\"` or `\"local\"` and defaults to `\"local\"`. This prop indicates what timezone to display the date in. If set to the value `\"utc\"`, the component will convert the given date to UTC.\n\n#### `locale`\n\nAn internationalization language string for each timer unit. The default value is `en` (for English). This prop supports all values that are supported by the user's browser.\n\n#### `localeOptions`\n\nThe `localeOptions` object supports all the options under [Intl.DateTimeFormat.options](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/DateTimeFormat#parameters) parameter that specifies the formatting style to use for `localeString` format.\n\nNote that if the `displayIn` prop is set to `utc`, the value of `localeOptions.timeZone` will automatically be converted to `UTC`.\n\n#### `render`\n\nOptional callback that should render a template. The callback will be provided an object with properties/values related to the date expressed in `datetime`.\n\nBy default, the Bento Date Display component will display the [`localeString` form of the Date](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/toLocaleString) for the given locale and localeOption. See the [Returned Time Parameters section](#returned-time-parameters) for more details on how each property will be displayed.\n\n```typescript\n(dateParams: DateParams) => JSXInternal.Element\ninterface DateParams {\n  day: number;\n  dayName: string;\n  dayNameShort: string;\n  dayPeriod: string;\n  dayTwoDigit: string;\n  hour: number;\n  hour12: number;\n  hour12TwoDigit: string;\n  hourTwoDigit: string;\n  iso: string;\n  localeString: string;\n  minute: number;\n  minuteTwoDigit: string;\n  month: number;\n  monthName: string;\n  monthNameShort: string;\n  monthTwoDigit: string;\n  second: number;\n  secondTwoDigit: string;\n  timeZoneName: string;\n  timeZoneNameShort: string;\n  year: number;\n  yearTwoDi: string;\n}\n```\n\n### Returned Time Parameters\n\nThis table lists the format you can specify in your Mustache template:\n\n| Format            | Meaning                                                       |\n| ----------------- | ------------------------------------------------------------- |\n| day               | 1, 2, ...12, 13, etc.                                         |\n| dayName           | string,                                                       |\n| dayNameShort      | string,                                                       |\n| dayPeriod         | string,                                                       |\n| dayTwoDigit       | 01, 02, 03, ..., 12, 13, etc.                                 |\n| hour              | 0, 1, 2, 3, ..., 12, 13, ..., 22, 23                          |\n| hour12            | 1, 2, 3, ..., 12, 1, 2, ..., 11, 12                           |\n| hour12TwoDigit    | 01, 02, ..., 12, 01, 02, ..., 11, 12                          |\n| hourTwoDigit      | 00, 01, 02, ..., 12, 13, ..., 22, 23                          |\n| iso               | A standard ISO8601 date string e.g. 2019-01-23T15:31:21.213Z, |\n| localeString      | A string with a language sensitive representation.            |\n| minute            | 0, 1, 2, ..., 58, 59                                          |\n| minuteTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| month             | 1, 2, 3, ..., 12                                              |\n| monthName         | Internationalized month name string.                          |\n| monthNameShort    | Internationalized abbreviated month name string.,             |\n| monthTwoDigit     | 01, 02, ..., 11, 12                                           |\n| second            | 0, 1, 2, ..., 58, 59                                          |\n| secondTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| timeZoneName      | Internationalized timezone, like `Pacific Daylight Time`      |\n| timeZoneNameShort | Internationalized timezone, abbreviated, like `PST`           |\n| year              | 0, 1, 2, ..., 1999, 2000, 2001, etc.                          |\n| yearTwoDigit      | 00, 01, 02, ..., 17, 18, 19, ..., 98, 99                      |\n","readmeFilename":"README.md","gitHead":"3fe2ae4108e8ce4355c90640458d13cf81af160c","bugs":{"url":"https://github.com/ampproject/amphtml/issues"},"_id":"@bentoproject/date-display@1.2205090810.0","_nodeVersion":"16.15.0","_npmVersion":"8.5.5","dist":{"integrity":"sha512-SiHGlRpCtu9FDSaFqVuMU2aJ0e6UznibGBDDXccqPl18y+uCuWvpkD1dT6Gtv4Sm4IoG0eNzRxhfRD91g2YZ/w==","shasum":"e1abf8f281e79619367337d59bff2f67b3a876d2","tarball":"https://registry.npmjs.org/@bentoproject/date-display/-/date-display-1.2205090810.0.tgz","fileCount":29,"unpackedSize":672045,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQC2VWk7DgsoLW3NTgGAENX6pLAEssm6fi95xDqx6Ec5PgIhAMhH5v3OwLPV+c9amKSinGsCz9L3zOTCLlOSX6oWseRt"}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJieiLIACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmoBAA/+JGJ2OyeppeRA3eYYQZcPdm2Jr9hTWVm/yGNwlZ5o+NFtgxG4\r\n2lLxF12sqYik/ADyPEMk0T1gl4wrcGBrL7BjCfG/nAQ4G9b96+cyK5+AEQlw\r\nwLujy6UYq6zFAox5IKc7RznXyFVLY+tOoSRpPBo1qau42QcKfccx+n8G5cxG\r\nr7m219Fbs1VdwswHCASz1F1V+USjttyALuoNQYkEwvDj6IZEydxFLqMxlHe3\r\nyvEKGdhWnw87D6N4i6WB54Phh5oF7DOPNXMKREMNmIoilkbpDIdp2CBTvRi2\r\nRRrL53QoFswk3EQEEeuZyQP2qSso+3KtCvNA/Nd37SffNCS0aYA/Zr0hujBb\r\nuzYCEZOHKAPNqsysCrN8MnPMmPhukcQ8OfWFUzDVXj5Gfq4p2NQHn3yVBUIL\r\nkLJUFDXX6Y9iGsyhmF038OfqHgBcjuhKpPvGp9v95y4fdIiWaGowd/lYd9qI\r\nnulgR1NaEXuiBUV8RYN04xiSj/RaDjbcNiH8x4mWn1c78cUtnflkU7/begGg\r\nux9ydQ2ZoL3Z5o2S4qt4KfjvVBbArqhlGwnQ3xvOdbgwpNTf8PQnWajMr2U2\r\nEvEs0vEAuNiEQgAwyOP/fFQ6WI7KK4qmMe80exA7xI6qp9TJul/KnpuJ0HpN\r\nUKfNWz1C2h/7P80OOIJqSI2MNn7SQacyhiU=\r\n=LJ0q\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"bentoprojectbot","email":"bentobot@amp.dev"},"directories":{},"maintainers":[{"name":"bentoprojectbot","email":"bentobot@amp.dev"},{"name":"kristoferbaxter","email":"kbax@me.com"},{"name":"esth","email":"esther@amp.dev"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/date-display_1.2205090810.0_1652171464367_0.2766742124774455"},"_hasShrinkwrap":false},"1.2205101904.0":{"name":"@bentoproject/date-display","version":"1.2205101904.0","description":"Displays time data that you can render in your page.","author":{"name":"Bento Authors"},"license":"Apache-2.0","main":"./dist/web-component.js","module":"./dist/web-component.module.js","exports":{".":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./web-component":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./preact":{"import":"./dist/component-preact.module.js","require":"./dist/component-preact.js"},"./react":{"import":"./dist/component-react.module.js","require":"./dist/component-react.js"},"./web-component.css":"./dist/web-component.css"},"repository":{"type":"git","url":"git+https://github.com/ampproject/amphtml.git","directory":"extensions/amp-date-display/1.0"},"homepage":"https://github.com/ampproject/amphtml/tree/main/extensions/amp-date-display/1.0","peerDependencies":{"preact":"^10.2.1","react":"^17.0.0"},"dependencies":{"@bentoproject/core":"0.2205101904.0"},"readme":"# Bento Date Display\n\nDisplays time data that you can render in your page. By providing specific [attributes](#attributes) in the Bento Date Display tag, the Bento Date Display extension returns a list of time parameters, which you can pass to [an amp-mustache template](../../amp-mustache/amp-mustache.md) for rendering. Refer to the [list below for each returned time parameter](#returned-time-parameters).\n\n## Web Component\n\nYou must include each Bento component's required CSS library to guarantee proper loading and before adding custom styles. Or use the light-weight pre-upgrade styles available inline. See [Layout and style](#layout-and-style).\n\n### Example: Import via npm\n\nInstall via npm:\n\n```sh\nnpm install @bentoproject/bento-date-display\n```\n\n```javascript\nimport {defineElement as defineBentoDateDisplay} from '@bentoproject/bento-date-display';\ndefineBentoDateDisplay();\n```\n\n### Include via `<script>`\n\n```html\n<script type=\"module\" src=\"https://cdn.ampproject.org/bento.mjs\" crossorigin=\"anonymous\"></script>\n<script nomodule src=\"https://cdn.ampproject.org/bento.js\" crossorigin=\"anonymous\"></script>\n<!-- Include bento-mustache.js to use mustache templates with this component -->\n<script async src=\"https://cdn.ampproject.org/v0/bento-mustache.js\"></script>\n<script type=\"module\" src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.mjs\" crossorigin=\"anonymous\"></script>\n<script nomodule src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.js\" crossorigin=\"anonymous\"></script>\n<link rel=\"stylesheet\" href=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.css\" crossorigin=\"anonymous\">\n```\n\n### Example\n\n```html\n<!DOCTYPE html>\n<html>\n  <head>\n    <script\n      type=\"module\"\n      async\n      src=\"https://cdn.ampproject.org/bento.mjs\"\n    ></script>\n    <script nomodule src=\"https://cdn.ampproject.org/bento.js\"></script>\n    <script async src=\"https://cdn.ampproject.org/v0/bento-mustache.js\"></script>\n    <script\n      type=\"module\"\n      async\n      src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.mjs\"\n    ></script>\n    <script\n      nomodule\n      async\n      src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.js\"\n    ></script>\n    <link\n      rel=\"stylesheet\"\n      type=\"text/css\"\n      href=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.css\"\n    />\n  </head>\n  <body>\n    <bento-date-display\n      datetime=\"2021-09-09T16:02:08.494Z\"\n      displayIn=\"utc\"\n      locale=\"en-GB\"\n    >\n      <template>\n        <div>ISO: {{iso}}; locale: {{localeString}}</div>\n      </template>\n    </bento-date-display>\n  </body>\n</html>\n```\n\n### Interactivity and API usage\n\nThe Bento Date Display component does not have an imperative API. However, the Bento Date Display Web Component will render a mustache-template, provided by the consumer in a `<template>` tag with `type=\"amp-mustache\"`. This template may interpolate date-related parameters. See the [Returned Time Parameters section](#returned-time-parameters) for a full list of all the available parameters.\n\n### Layout and style\n\nEach Bento component has a small CSS library you must include to guarantee proper loading without [content shifts](https://web.dev/cls/). Because of order-based specificity, you must manually ensure that stylesheets are included before any custom styles.\n\n```html\n<link rel=\"stylesheet\" type=\"text/css\" href=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.css\">\n```\n\nAlternatively, you may also make the light-weight pre-upgrade styles available inline:\n\n```html\n<style data-bento-boilerplate>\n  bento-date-display {\n    display: block;\n    overflow: hidden;\n    position: relative;\n  }\n</style>\n```\n\n### Attributes\n\n#### `datetime`\n\nThe `datetime` attribute specifies the date and time in a standard ISO 8601 date\nstring (e.g. 2017-08-02T15:05:05.000Z) or the string `now`. If set to `now`,\n`bento-date-display` will use the time the page loaded to render its template.\n\n#### `timestamp-ms`\n\nThe `timestamp-ms` attribute specifies the date and time using the number of\nmilliseconds since 1970-01-01T0:00:00.000Z\n\n#### `timestamp-seconds`\n\nThe `timestamp-seconds` attribute specifies the date and time using the number\nof seconds since 1970-01-01T0:00:00.000Z\n\n#### `locale` (optional)\n\nAn internationalization language string for each timer unit. The default value\nis `en` (for English). This attribute supports all values that are supported by\nthe user's browser.\n\n#### `display-in` (optional)\n\nIf set to the value `utc`, the `display-in` attribute will convert the given\ndate to UTC.\n\n#### `offset-seconds` (optional)\n\nThe `offset-seconds` attribute specifies an integer number of seconds to shift\nthe given date.\n\n#### `data-options-\\*` (optional)\n\nThe `data-options-*` supports all the options under [Intl.DateTimeFormat.options](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/DateTimeFormat#parameters)\nparameter that specifies the formatting style to use for `localeString` format.\nValid attributes include: `data-options-date-style`, `data-options-time-style`, etc.\n\nNote that if `display-in` attrubute is set to `utc`, the value of\n`data-options-time-zone` will automatically be converted to `UTC`.\n\n### Styling\n\nYou may use the `bento-date-display` element selector to style the Bento Date Display component freely.\n\n---\n\n## Preact/React Component\n\n### Import via npm\n\n```sh\nnpm install @bentoproject/date-display\n```\n\n```javascript\nimport React from 'react';\nimport {BentoDateDisplay} from '@bentoproject/date-display/react';\nimport '@bentoproject/date-display/styles.css';\n\nfunction App() {\n  return (\n    <BentoDateDisplay\n      datetime={dateTime}\n      displayIn={displayIn}\n      locale={locale}\n      render={(date) => (\n        <div>{`ISO: ${date.iso}; locale: ${date.localeString}`}</div>\n      )}\n    />\n  );\n}\n```\n\n### Interactivity and API usage\n\nThe Bento Date Display component does not have an imperative API. However, the Bento Date Display Preact/React component does accept a `render` prop that renders the consumer's template. This `render` prop should be a function which the Bento Date Display Preact/React component can use to render its template. The `render` callback will be provided a variety of date-related parameters for consumers to interpolate in the rendered template. See the [`render` prop section](#render) for more information.\n\n### Layout and style\n\nThe Bento Date Display Preact/React component allows consumers to render their own templates. These templates may use inline styles, `<style>` tags, Preact/React components that import their own stylesheets.\n\n### Props\n\n#### `datetime`\n\nRequired prop. Denotes the date and time as a Date, String, or Number. If String, must be a standard ISO 8601 date string (e.g. 2017-08-02T15:05:05.000Z) or the string `now`. If set to `now`, it will use the time the page loaded to render its template. If Number, must be a POSIX epoch value in milliseconds.\n\n#### `displayIn`\n\nOptional prop that can be either `\"utc\"` or `\"local\"` and defaults to `\"local\"`. This prop indicates what timezone to display the date in. If set to the value `\"utc\"`, the component will convert the given date to UTC.\n\n#### `locale`\n\nAn internationalization language string for each timer unit. The default value is `en` (for English). This prop supports all values that are supported by the user's browser.\n\n#### `localeOptions`\n\nThe `localeOptions` object supports all the options under [Intl.DateTimeFormat.options](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/DateTimeFormat#parameters) parameter that specifies the formatting style to use for `localeString` format.\n\nNote that if the `displayIn` prop is set to `utc`, the value of `localeOptions.timeZone` will automatically be converted to `UTC`.\n\n#### `render`\n\nOptional callback that should render a template. The callback will be provided an object with properties/values related to the date expressed in `datetime`.\n\nBy default, the Bento Date Display component will display the [`localeString` form of the Date](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/toLocaleString) for the given locale and localeOption. See the [Returned Time Parameters section](#returned-time-parameters) for more details on how each property will be displayed.\n\n```typescript\n(dateParams: DateParams) => JSXInternal.Element\ninterface DateParams {\n  day: number;\n  dayName: string;\n  dayNameShort: string;\n  dayPeriod: string;\n  dayTwoDigit: string;\n  hour: number;\n  hour12: number;\n  hour12TwoDigit: string;\n  hourTwoDigit: string;\n  iso: string;\n  localeString: string;\n  minute: number;\n  minuteTwoDigit: string;\n  month: number;\n  monthName: string;\n  monthNameShort: string;\n  monthTwoDigit: string;\n  second: number;\n  secondTwoDigit: string;\n  timeZoneName: string;\n  timeZoneNameShort: string;\n  year: number;\n  yearTwoDi: string;\n}\n```\n\n### Returned Time Parameters\n\nThis table lists the format you can specify in your Mustache template:\n\n| Format            | Meaning                                                       |\n| ----------------- | ------------------------------------------------------------- |\n| day               | 1, 2, ...12, 13, etc.                                         |\n| dayName           | string,                                                       |\n| dayNameShort      | string,                                                       |\n| dayPeriod         | string,                                                       |\n| dayTwoDigit       | 01, 02, 03, ..., 12, 13, etc.                                 |\n| hour              | 0, 1, 2, 3, ..., 12, 13, ..., 22, 23                          |\n| hour12            | 1, 2, 3, ..., 12, 1, 2, ..., 11, 12                           |\n| hour12TwoDigit    | 01, 02, ..., 12, 01, 02, ..., 11, 12                          |\n| hourTwoDigit      | 00, 01, 02, ..., 12, 13, ..., 22, 23                          |\n| iso               | A standard ISO8601 date string e.g. 2019-01-23T15:31:21.213Z, |\n| localeString      | A string with a language sensitive representation.            |\n| minute            | 0, 1, 2, ..., 58, 59                                          |\n| minuteTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| month             | 1, 2, 3, ..., 12                                              |\n| monthName         | Internationalized month name string.                          |\n| monthNameShort    | Internationalized abbreviated month name string.,             |\n| monthTwoDigit     | 01, 02, ..., 11, 12                                           |\n| second            | 0, 1, 2, ..., 58, 59                                          |\n| secondTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| timeZoneName      | Internationalized timezone, like `Pacific Daylight Time`      |\n| timeZoneNameShort | Internationalized timezone, abbreviated, like `PST`           |\n| year              | 0, 1, 2, ..., 1999, 2000, 2001, etc.                          |\n| yearTwoDigit      | 00, 01, 02, ..., 17, 18, 19, ..., 98, 99                      |\n","readmeFilename":"README.md","gitHead":"43d879755f765aee2d0eab657533b493a025713f","bugs":{"url":"https://github.com/ampproject/amphtml/issues"},"_id":"@bentoproject/date-display@1.2205101904.0","_nodeVersion":"16.15.0","_npmVersion":"8.5.5","dist":{"integrity":"sha512-KpfHJWf4gumSTLX2T+xWTgVI7Hi/uFCIqsUgeZhKQ7NTapAxb3esJp8GBMkjIX5Yr2QAfQzFeO3RLXLP2BxBxw==","shasum":"fa0d8a794e066875ea15568beeca177f5097df18","tarball":"https://registry.npmjs.org/@bentoproject/date-display/-/date-display-1.2205101904.0.tgz","fileCount":29,"unpackedSize":672051,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDCoC8lLwsAKWek2ks4LGff3sWrs5pWPaGZzeTnANu8kwIhANygYZn4hazrtIUSNVt1urRRpeDFzoJu3i5Ni7wDC6ZQ"}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJie3RFACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrjuQ//WW2jfMkrEky6Z7RTu4GRb9BCgPDZG6LBMAwUQ8TOlIflXRpY\r\nq0L9zOAeW5hDNl/VZDK2U7MXGZjdRA0RYZoj+3Mjtv+UrFC45035y2jM3TcY\r\nZ5KxFHvA52wdKdYy4RabdEWuB9MsSq0SnA2Yme5AkPAmgi8ENTVI29iyKIv2\r\nImmCKbZviK7rJ43WaQRoBgyz9trkeE5tvdjd/YnnPmh7KIb5iW2inNpDQHQC\r\nGROkZazwZjC6NHth+MfHQgQO980u5KRZX6Y2lKpmdNFkJlI//Tux0Wnh6vQ0\r\nXPvFONnVYnEaI3Zv8G6keLkZhbUVtfrNqnkGDd2048ba9XWj0vCd7ki1pNl4\r\nSRovaREJbfLfhevJwkZDc9o75M2WUvIUHpBhHWweyw0USHfxLakn+Bbtp2Bw\r\nfVhm6Qy+KHGcUcko7ygj7WJZSukZ+FXphiAt8lnjC2/JBaYY/Y4g/Ggz7QR5\r\nDNUhVXd7C/w+VjnmbN+R5hjL+z4KELa3R94zVsmsGxCFpyQIByEVDus5Ky0c\r\nfACZ58t4AgBAwMn0YCUBdwwq831WCiWbuuUUI71PxLzDchZsTfOhJnkgLjB7\r\n3lJNYsHMhNqSb9U6bOriSmXsO65/4C31cqT7Q9gWJgo3FzgXBsqO+ubs0wmb\r\nKHFjy45Me3KDJS6F9uo9lA4iZs+psnXrBOE=\r\n=LLM4\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"bentoprojectbot","email":"bentobot@amp.dev"},"directories":{},"maintainers":[{"name":"bentoprojectbot","email":"bentobot@amp.dev"},{"name":"kristoferbaxter","email":"kbax@me.com"},{"name":"esth","email":"esther@amp.dev"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/date-display_1.2205101904.0_1652257861010_0.8441487760095476"},"_hasShrinkwrap":false},"1.2205120110.0":{"name":"@bentoproject/date-display","version":"1.2205120110.0","description":"Displays time data that you can render in your page.","author":{"name":"Bento Authors"},"license":"Apache-2.0","main":"./dist/web-component.js","module":"./dist/web-component.module.js","exports":{".":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./web-component":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./preact":{"import":"./dist/component-preact.module.js","require":"./dist/component-preact.js"},"./react":{"import":"./dist/component-react.module.js","require":"./dist/component-react.js"},"./web-component.css":"./dist/web-component.css"},"repository":{"type":"git","url":"git+https://github.com/ampproject/amphtml.git","directory":"extensions/amp-date-display/1.0"},"homepage":"https://github.com/ampproject/amphtml/tree/main/extensions/amp-date-display/1.0","peerDependencies":{"preact":"^10.2.1","react":"^17.0.0"},"dependencies":{"@bentoproject/core":"0.2205120110.0"},"readme":"# Bento Date Display\n\nDisplays time data that you can render in your page. By providing specific [attributes](#attributes) in the Bento Date Display tag, the Bento Date Display extension returns a list of time parameters, which you can pass to [an amp-mustache template](../../amp-mustache/amp-mustache.md) for rendering. Refer to the [list below for each returned time parameter](#returned-time-parameters).\n\n## Web Component\n\nYou must include each Bento component's required CSS library to guarantee proper loading and before adding custom styles. Or use the light-weight pre-upgrade styles available inline. See [Layout and style](#layout-and-style).\n\n### Example: Import via npm\n\nInstall via npm:\n\n```sh\nnpm install @bentoproject/bento-date-display\n```\n\n```javascript\nimport {defineElement as defineBentoDateDisplay} from '@bentoproject/bento-date-display';\ndefineBentoDateDisplay();\n```\n\n### Include via `<script>`\n\n```html\n<script type=\"module\" src=\"https://cdn.ampproject.org/bento.mjs\" crossorigin=\"anonymous\"></script>\n<script nomodule src=\"https://cdn.ampproject.org/bento.js\" crossorigin=\"anonymous\"></script>\n<!-- Include bento-mustache.js to use mustache templates with this component -->\n<script async src=\"https://cdn.ampproject.org/v0/bento-mustache.js\"></script>\n<script type=\"module\" src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.mjs\" crossorigin=\"anonymous\"></script>\n<script nomodule src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.js\" crossorigin=\"anonymous\"></script>\n<link rel=\"stylesheet\" href=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.css\" crossorigin=\"anonymous\">\n```\n\n### Example\n\n```html\n<!DOCTYPE html>\n<html>\n  <head>\n    <script\n      type=\"module\"\n      async\n      src=\"https://cdn.ampproject.org/bento.mjs\"\n    ></script>\n    <script nomodule src=\"https://cdn.ampproject.org/bento.js\"></script>\n    <script async src=\"https://cdn.ampproject.org/v0/bento-mustache.js\"></script>\n    <script\n      type=\"module\"\n      async\n      src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.mjs\"\n    ></script>\n    <script\n      nomodule\n      async\n      src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.js\"\n    ></script>\n    <link\n      rel=\"stylesheet\"\n      type=\"text/css\"\n      href=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.css\"\n    />\n  </head>\n  <body>\n    <bento-date-display\n      datetime=\"2021-09-09T16:02:08.494Z\"\n      displayIn=\"utc\"\n      locale=\"en-GB\"\n    >\n      <template>\n        <div>ISO: {{iso}}; locale: {{localeString}}</div>\n      </template>\n    </bento-date-display>\n  </body>\n</html>\n```\n\n### Interactivity and API usage\n\nThe Bento Date Display component does not have an imperative API. However, the Bento Date Display Web Component will render a mustache-template, provided by the consumer in a `<template>` tag with `type=\"amp-mustache\"`. This template may interpolate date-related parameters. See the [Returned Time Parameters section](#returned-time-parameters) for a full list of all the available parameters.\n\n### Layout and style\n\nEach Bento component has a small CSS library you must include to guarantee proper loading without [content shifts](https://web.dev/cls/). Because of order-based specificity, you must manually ensure that stylesheets are included before any custom styles.\n\n```html\n<link rel=\"stylesheet\" type=\"text/css\" href=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.css\">\n```\n\nAlternatively, you may also make the light-weight pre-upgrade styles available inline:\n\n```html\n<style data-bento-boilerplate>\n  bento-date-display {\n    display: block;\n    overflow: hidden;\n    position: relative;\n  }\n</style>\n```\n\n### Attributes\n\n#### `datetime`\n\nThe `datetime` attribute specifies the date and time in a standard ISO 8601 date\nstring (e.g. 2017-08-02T15:05:05.000Z) or the string `now`. If set to `now`,\n`bento-date-display` will use the time the page loaded to render its template.\n\n#### `timestamp-ms`\n\nThe `timestamp-ms` attribute specifies the date and time using the number of\nmilliseconds since 1970-01-01T0:00:00.000Z\n\n#### `timestamp-seconds`\n\nThe `timestamp-seconds` attribute specifies the date and time using the number\nof seconds since 1970-01-01T0:00:00.000Z\n\n#### `locale` (optional)\n\nAn internationalization language string for each timer unit. The default value\nis `en` (for English). This attribute supports all values that are supported by\nthe user's browser.\n\n#### `display-in` (optional)\n\nIf set to the value `utc`, the `display-in` attribute will convert the given\ndate to UTC.\n\n#### `offset-seconds` (optional)\n\nThe `offset-seconds` attribute specifies an integer number of seconds to shift\nthe given date.\n\n#### `data-options-\\*` (optional)\n\nThe `data-options-*` supports all the options under [Intl.DateTimeFormat.options](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/DateTimeFormat#parameters)\nparameter that specifies the formatting style to use for `localeString` format.\nValid attributes include: `data-options-date-style`, `data-options-time-style`, etc.\n\nNote that if `display-in` attrubute is set to `utc`, the value of\n`data-options-time-zone` will automatically be converted to `UTC`.\n\n### Styling\n\nYou may use the `bento-date-display` element selector to style the Bento Date Display component freely.\n\n---\n\n## Preact/React Component\n\n### Import via npm\n\n```sh\nnpm install @bentoproject/date-display\n```\n\n```javascript\nimport React from 'react';\nimport {BentoDateDisplay} from '@bentoproject/date-display/react';\nimport '@bentoproject/date-display/styles.css';\n\nfunction App() {\n  return (\n    <BentoDateDisplay\n      datetime={dateTime}\n      displayIn={displayIn}\n      locale={locale}\n      render={(date) => (\n        <div>{`ISO: ${date.iso}; locale: ${date.localeString}`}</div>\n      )}\n    />\n  );\n}\n```\n\n### Interactivity and API usage\n\nThe Bento Date Display component does not have an imperative API. However, the Bento Date Display Preact/React component does accept a `render` prop that renders the consumer's template. This `render` prop should be a function which the Bento Date Display Preact/React component can use to render its template. The `render` callback will be provided a variety of date-related parameters for consumers to interpolate in the rendered template. See the [`render` prop section](#render) for more information.\n\n### Layout and style\n\nThe Bento Date Display Preact/React component allows consumers to render their own templates. These templates may use inline styles, `<style>` tags, Preact/React components that import their own stylesheets.\n\n### Props\n\n#### `datetime`\n\nRequired prop. Denotes the date and time as a Date, String, or Number. If String, must be a standard ISO 8601 date string (e.g. 2017-08-02T15:05:05.000Z) or the string `now`. If set to `now`, it will use the time the page loaded to render its template. If Number, must be a POSIX epoch value in milliseconds.\n\n#### `displayIn`\n\nOptional prop that can be either `\"utc\"` or `\"local\"` and defaults to `\"local\"`. This prop indicates what timezone to display the date in. If set to the value `\"utc\"`, the component will convert the given date to UTC.\n\n#### `locale`\n\nAn internationalization language string for each timer unit. The default value is `en` (for English). This prop supports all values that are supported by the user's browser.\n\n#### `localeOptions`\n\nThe `localeOptions` object supports all the options under [Intl.DateTimeFormat.options](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/DateTimeFormat#parameters) parameter that specifies the formatting style to use for `localeString` format.\n\nNote that if the `displayIn` prop is set to `utc`, the value of `localeOptions.timeZone` will automatically be converted to `UTC`.\n\n#### `render`\n\nOptional callback that should render a template. The callback will be provided an object with properties/values related to the date expressed in `datetime`.\n\nBy default, the Bento Date Display component will display the [`localeString` form of the Date](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/toLocaleString) for the given locale and localeOption. See the [Returned Time Parameters section](#returned-time-parameters) for more details on how each property will be displayed.\n\n```typescript\n(dateParams: DateParams) => JSXInternal.Element\ninterface DateParams {\n  day: number;\n  dayName: string;\n  dayNameShort: string;\n  dayPeriod: string;\n  dayTwoDigit: string;\n  hour: number;\n  hour12: number;\n  hour12TwoDigit: string;\n  hourTwoDigit: string;\n  iso: string;\n  localeString: string;\n  minute: number;\n  minuteTwoDigit: string;\n  month: number;\n  monthName: string;\n  monthNameShort: string;\n  monthTwoDigit: string;\n  second: number;\n  secondTwoDigit: string;\n  timeZoneName: string;\n  timeZoneNameShort: string;\n  year: number;\n  yearTwoDi: string;\n}\n```\n\n### Returned Time Parameters\n\nThis table lists the format you can specify in your Mustache template:\n\n| Format            | Meaning                                                       |\n| ----------------- | ------------------------------------------------------------- |\n| day               | 1, 2, ...12, 13, etc.                                         |\n| dayName           | string,                                                       |\n| dayNameShort      | string,                                                       |\n| dayPeriod         | string,                                                       |\n| dayTwoDigit       | 01, 02, 03, ..., 12, 13, etc.                                 |\n| hour              | 0, 1, 2, 3, ..., 12, 13, ..., 22, 23                          |\n| hour12            | 1, 2, 3, ..., 12, 1, 2, ..., 11, 12                           |\n| hour12TwoDigit    | 01, 02, ..., 12, 01, 02, ..., 11, 12                          |\n| hourTwoDigit      | 00, 01, 02, ..., 12, 13, ..., 22, 23                          |\n| iso               | A standard ISO8601 date string e.g. 2019-01-23T15:31:21.213Z, |\n| localeString      | A string with a language sensitive representation.            |\n| minute            | 0, 1, 2, ..., 58, 59                                          |\n| minuteTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| month             | 1, 2, 3, ..., 12                                              |\n| monthName         | Internationalized month name string.                          |\n| monthNameShort    | Internationalized abbreviated month name string.,             |\n| monthTwoDigit     | 01, 02, ..., 11, 12                                           |\n| second            | 0, 1, 2, ..., 58, 59                                          |\n| secondTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| timeZoneName      | Internationalized timezone, like `Pacific Daylight Time`      |\n| timeZoneNameShort | Internationalized timezone, abbreviated, like `PST`           |\n| year              | 0, 1, 2, ..., 1999, 2000, 2001, etc.                          |\n| yearTwoDigit      | 00, 01, 02, ..., 17, 18, 19, ..., 98, 99                      |\n","readmeFilename":"README.md","gitHead":"46f34860b9f501caf0eda81977d1ae3aef4a947c","bugs":{"url":"https://github.com/ampproject/amphtml/issues"},"_id":"@bentoproject/date-display@1.2205120110.0","_nodeVersion":"16.15.0","_npmVersion":"8.5.5","dist":{"integrity":"sha512-jWjyBRvDComzUIHamMPJHVmsvZyA6veiqFjcZw0L5fvL/v0VAeiaG/W/AmHBe/9ldzCiIDau0s0pPqjc8g3jwQ==","shasum":"f39cf647626afd8d571e72fca9f5926bd735fa75","tarball":"https://registry.npmjs.org/@bentoproject/date-display/-/date-display-1.2205120110.0.tgz","fileCount":29,"unpackedSize":672051,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIFV0EhNQ3geLWXVXPESkXe/CAbVlixWcbsdf/pBeLqVFAiEAhuLU9LQHR2Ow4trXn7Ii5L79vmBIO56P4eXWpCvJ/qo="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJifMWMACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpJKQ//dex8XKpq240J3sIfUzZW6LGUHdf+FjayaLB9vj2Gp9K06tSG\r\ncERTzs2/tJGYNmg3NRVf9mhFT5eYzpMg37bdm5QwNXPS8mZvSb1/Jb0e8uWP\r\nCO/He80SzZ/96mvr9TftSNLr4Gv59WjbegDx7IW5i1OjdQlToTe/1q5128nm\r\n2oCf90fFOo/SRAEkSz38dbt7CTAg7go/CKojvl4cPhSLxk+0IJHqUxNb/Qo1\r\novjYZWB4ChWoVioNlteLvGdS7iZKGgCFllbwUJuRyWHcr85U1PoPKJ/+KdwM\r\nYhv7Y6C0CNVQmIu0wcgIJtAAJ1hZ1yFrAaE4bnpYqrX8T3jk7kJQjZRwbt+q\r\nPIc7To6ifEhDr4d/6OCM0yorjWi/mGduP2q51LcQjCgfaBZVvkuThp7xjpNs\r\nhcb+kk/cQk6ZY2YX1IXU4WIReu0yqY/vkGLZPfb2rgNqOQGHPDPJymp302DW\r\n2c74O6iTVjN8Wvz7BEei7MnorCqIThNbJY+d40EWatAhzHhsuXdh0KnC3l02\r\nQZ3PGXaKg60yybngqxUq7NwKcrO9e2O5Vk25Hb35jQuRk+155YjUkYMHsfHk\r\n653uKYcJU+78uh3cIBKpDKnVvJi11+OOfzPAwXEw5s2Nn/0iDlF7O8joE2Hu\r\nTGrBK+MiNv314s+cchY5DymqkOctRCRLWUA=\r\n=/6UK\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"bentoprojectbot","email":"bentobot@amp.dev"},"directories":{},"maintainers":[{"name":"bentoprojectbot","email":"bentobot@amp.dev"},{"name":"kristoferbaxter","email":"kbax@me.com"},{"name":"esth","email":"esther@amp.dev"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/date-display_1.2205120110.0_1652344204190_0.6668857683212162"},"_hasShrinkwrap":false},"1.2205161914.0":{"name":"@bentoproject/date-display","version":"1.2205161914.0","description":"Displays time data that you can render in your page.","author":{"name":"Bento Authors"},"license":"Apache-2.0","main":"./dist/web-component.js","module":"./dist/web-component.module.js","exports":{".":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./web-component":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./preact":{"import":"./dist/component-preact.module.js","require":"./dist/component-preact.js"},"./react":{"import":"./dist/component-react.module.js","require":"./dist/component-react.js"},"./web-component.css":"./dist/web-component.css"},"repository":{"type":"git","url":"git+https://github.com/ampproject/amphtml.git","directory":"extensions/amp-date-display/1.0"},"homepage":"https://github.com/ampproject/amphtml/tree/main/extensions/amp-date-display/1.0","peerDependencies":{"preact":"^10.2.1","react":"^17.0.0"},"dependencies":{"@bentoproject/core":"0.2205161914.0"},"readme":"# Bento Date Display\n\nDisplays time data that you can render in your page. By providing specific [attributes](#attributes) in the Bento Date Display tag, the Bento Date Display extension returns a list of time parameters, which you can pass to [an amp-mustache template](../../amp-mustache/amp-mustache.md) for rendering. Refer to the [list below for each returned time parameter](#returned-time-parameters).\n\n## Web Component\n\nYou must include each Bento component's required CSS library to guarantee proper loading and before adding custom styles. Or use the light-weight pre-upgrade styles available inline. See [Layout and style](#layout-and-style).\n\n### Example: Import via npm\n\nInstall via npm:\n\n```sh\nnpm install @bentoproject/bento-date-display\n```\n\n```javascript\nimport {defineElement as defineBentoDateDisplay} from '@bentoproject/bento-date-display';\ndefineBentoDateDisplay();\n```\n\n### Include via `<script>`\n\n```html\n<script type=\"module\" src=\"https://cdn.ampproject.org/bento.mjs\" crossorigin=\"anonymous\"></script>\n<script nomodule src=\"https://cdn.ampproject.org/bento.js\" crossorigin=\"anonymous\"></script>\n<!-- Include bento-mustache.js to use mustache templates with this component -->\n<script async src=\"https://cdn.ampproject.org/v0/bento-mustache.js\"></script>\n<script type=\"module\" src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.mjs\" crossorigin=\"anonymous\"></script>\n<script nomodule src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.js\" crossorigin=\"anonymous\"></script>\n<link rel=\"stylesheet\" href=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.css\" crossorigin=\"anonymous\">\n```\n\n### Example\n\n```html\n<!DOCTYPE html>\n<html>\n  <head>\n    <script\n      type=\"module\"\n      async\n      src=\"https://cdn.ampproject.org/bento.mjs\"\n    ></script>\n    <script nomodule src=\"https://cdn.ampproject.org/bento.js\"></script>\n    <script async src=\"https://cdn.ampproject.org/v0/bento-mustache.js\"></script>\n    <script\n      type=\"module\"\n      async\n      src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.mjs\"\n    ></script>\n    <script\n      nomodule\n      async\n      src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.js\"\n    ></script>\n    <link\n      rel=\"stylesheet\"\n      type=\"text/css\"\n      href=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.css\"\n    />\n  </head>\n  <body>\n    <bento-date-display\n      datetime=\"2021-09-09T16:02:08.494Z\"\n      displayIn=\"utc\"\n      locale=\"en-GB\"\n    >\n      <template>\n        <div>ISO: {{iso}}; locale: {{localeString}}</div>\n      </template>\n    </bento-date-display>\n  </body>\n</html>\n```\n\n### Interactivity and API usage\n\nThe Bento Date Display component does not have an imperative API. However, the Bento Date Display Web Component will render a mustache-template, provided by the consumer in a `<template>` tag with `type=\"amp-mustache\"`. This template may interpolate date-related parameters. See the [Returned Time Parameters section](#returned-time-parameters) for a full list of all the available parameters.\n\n### Layout and style\n\nEach Bento component has a small CSS library you must include to guarantee proper loading without [content shifts](https://web.dev/cls/). Because of order-based specificity, you must manually ensure that stylesheets are included before any custom styles.\n\n```html\n<link rel=\"stylesheet\" type=\"text/css\" href=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.css\">\n```\n\nAlternatively, you may also make the light-weight pre-upgrade styles available inline:\n\n```html\n<style data-bento-boilerplate>\n  bento-date-display {\n    display: block;\n    overflow: hidden;\n    position: relative;\n  }\n</style>\n```\n\n### Attributes\n\n#### `datetime`\n\nThe `datetime` attribute specifies the date and time in a standard ISO 8601 date\nstring (e.g. 2017-08-02T15:05:05.000Z) or the string `now`. If set to `now`,\n`bento-date-display` will use the time the page loaded to render its template.\n\n#### `timestamp-ms`\n\nThe `timestamp-ms` attribute specifies the date and time using the number of\nmilliseconds since 1970-01-01T0:00:00.000Z\n\n#### `timestamp-seconds`\n\nThe `timestamp-seconds` attribute specifies the date and time using the number\nof seconds since 1970-01-01T0:00:00.000Z\n\n#### `locale` (optional)\n\nAn internationalization language string for each timer unit. The default value\nis `en` (for English). This attribute supports all values that are supported by\nthe user's browser.\n\n#### `display-in` (optional)\n\nIf set to the value `utc`, the `display-in` attribute will convert the given\ndate to UTC.\n\n#### `offset-seconds` (optional)\n\nThe `offset-seconds` attribute specifies an integer number of seconds to shift\nthe given date.\n\n#### `data-options-\\*` (optional)\n\nThe `data-options-*` supports all the options under [Intl.DateTimeFormat.options](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/DateTimeFormat#parameters)\nparameter that specifies the formatting style to use for `localeString` format.\nValid attributes include: `data-options-date-style`, `data-options-time-style`, etc.\n\nNote that if `display-in` attrubute is set to `utc`, the value of\n`data-options-time-zone` will automatically be converted to `UTC`.\n\n### Styling\n\nYou may use the `bento-date-display` element selector to style the Bento Date Display component freely.\n\n---\n\n## Preact/React Component\n\n### Import via npm\n\n```sh\nnpm install @bentoproject/date-display\n```\n\n```javascript\nimport React from 'react';\nimport {BentoDateDisplay} from '@bentoproject/date-display/react';\nimport '@bentoproject/date-display/styles.css';\n\nfunction App() {\n  return (\n    <BentoDateDisplay\n      datetime={dateTime}\n      displayIn={displayIn}\n      locale={locale}\n      render={(date) => (\n        <div>{`ISO: ${date.iso}; locale: ${date.localeString}`}</div>\n      )}\n    />\n  );\n}\n```\n\n### Interactivity and API usage\n\nThe Bento Date Display component does not have an imperative API. However, the Bento Date Display Preact/React component does accept a `render` prop that renders the consumer's template. This `render` prop should be a function which the Bento Date Display Preact/React component can use to render its template. The `render` callback will be provided a variety of date-related parameters for consumers to interpolate in the rendered template. See the [`render` prop section](#render) for more information.\n\n### Layout and style\n\nThe Bento Date Display Preact/React component allows consumers to render their own templates. These templates may use inline styles, `<style>` tags, Preact/React components that import their own stylesheets.\n\n### Props\n\n#### `datetime`\n\nRequired prop. Denotes the date and time as a Date, String, or Number. If String, must be a standard ISO 8601 date string (e.g. 2017-08-02T15:05:05.000Z) or the string `now`. If set to `now`, it will use the time the page loaded to render its template. If Number, must be a POSIX epoch value in milliseconds.\n\n#### `displayIn`\n\nOptional prop that can be either `\"utc\"` or `\"local\"` and defaults to `\"local\"`. This prop indicates what timezone to display the date in. If set to the value `\"utc\"`, the component will convert the given date to UTC.\n\n#### `locale`\n\nAn internationalization language string for each timer unit. The default value is `en` (for English). This prop supports all values that are supported by the user's browser.\n\n#### `localeOptions`\n\nThe `localeOptions` object supports all the options under [Intl.DateTimeFormat.options](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/DateTimeFormat#parameters) parameter that specifies the formatting style to use for `localeString` format.\n\nNote that if the `displayIn` prop is set to `utc`, the value of `localeOptions.timeZone` will automatically be converted to `UTC`.\n\n#### `render`\n\nOptional callback that should render a template. The callback will be provided an object with properties/values related to the date expressed in `datetime`.\n\nBy default, the Bento Date Display component will display the [`localeString` form of the Date](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/toLocaleString) for the given locale and localeOption. See the [Returned Time Parameters section](#returned-time-parameters) for more details on how each property will be displayed.\n\n```typescript\n(dateParams: DateParams) => JSXInternal.Element\ninterface DateParams {\n  day: number;\n  dayName: string;\n  dayNameShort: string;\n  dayPeriod: string;\n  dayTwoDigit: string;\n  hour: number;\n  hour12: number;\n  hour12TwoDigit: string;\n  hourTwoDigit: string;\n  iso: string;\n  localeString: string;\n  minute: number;\n  minuteTwoDigit: string;\n  month: number;\n  monthName: string;\n  monthNameShort: string;\n  monthTwoDigit: string;\n  second: number;\n  secondTwoDigit: string;\n  timeZoneName: string;\n  timeZoneNameShort: string;\n  year: number;\n  yearTwoDi: string;\n}\n```\n\n### Returned Time Parameters\n\nThis table lists the format you can specify in your Mustache template:\n\n| Format            | Meaning                                                       |\n| ----------------- | ------------------------------------------------------------- |\n| day               | 1, 2, ...12, 13, etc.                                         |\n| dayName           | string,                                                       |\n| dayNameShort      | string,                                                       |\n| dayPeriod         | string,                                                       |\n| dayTwoDigit       | 01, 02, 03, ..., 12, 13, etc.                                 |\n| hour              | 0, 1, 2, 3, ..., 12, 13, ..., 22, 23                          |\n| hour12            | 1, 2, 3, ..., 12, 1, 2, ..., 11, 12                           |\n| hour12TwoDigit    | 01, 02, ..., 12, 01, 02, ..., 11, 12                          |\n| hourTwoDigit      | 00, 01, 02, ..., 12, 13, ..., 22, 23                          |\n| iso               | A standard ISO8601 date string e.g. 2019-01-23T15:31:21.213Z, |\n| localeString      | A string with a language sensitive representation.            |\n| minute            | 0, 1, 2, ..., 58, 59                                          |\n| minuteTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| month             | 1, 2, 3, ..., 12                                              |\n| monthName         | Internationalized month name string.                          |\n| monthNameShort    | Internationalized abbreviated month name string.,             |\n| monthTwoDigit     | 01, 02, ..., 11, 12                                           |\n| second            | 0, 1, 2, ..., 58, 59                                          |\n| secondTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| timeZoneName      | Internationalized timezone, like `Pacific Daylight Time`      |\n| timeZoneNameShort | Internationalized timezone, abbreviated, like `PST`           |\n| year              | 0, 1, 2, ..., 1999, 2000, 2001, etc.                          |\n| yearTwoDigit      | 00, 01, 02, ..., 17, 18, 19, ..., 98, 99                      |\n","readmeFilename":"README.md","gitHead":"2fb4e151488ba4d856b33f836151d66b45ca457e","bugs":{"url":"https://github.com/ampproject/amphtml/issues"},"_id":"@bentoproject/date-display@1.2205161914.0","_nodeVersion":"16.15.0","_npmVersion":"8.5.5","dist":{"integrity":"sha512-3sRIrUjmECrbeTZDitOWmSq1ZTMUHaZzn/iNrToLsEan9Fa7ODNFT8RKFCvabWHQp1TSsT/gJvnZlW6dm3NkDg==","shasum":"0938bcde73d93368285d7c5df5ace37d5572da0c","tarball":"https://registry.npmjs.org/@bentoproject/date-display/-/date-display-1.2205161914.0.tgz","fileCount":29,"unpackedSize":672051,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCICGgPHl4HQ48N2Tm/srUhpeNp14jGxawyqcQdkmdx63IAiEA/nEtPeYBuVAHs65ehmhEKOVZINtHB5eaXItFrYaIZQ0="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJig1voACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpQ1xAAj9wkytADboN8iBMSat43+CrWAYTWd/BBkIcZHrMO/QFgW6Nw\r\nFVTNSABFBgy9sGjwPTM101nsiRiw+dCXH9OeUImn8zbmFXqdUNHBa55K1dIx\r\nwupaihhGdqW7P++NkHtBrOunCqTBdHu1rhwcOFJjgmUBJ5FnRDj39LWEs0lP\r\n9iR83OmS0cVoXjhSmXY2ltZtDA3itMO63o42DwI1+OQbdCbolmpHLUtl/Els\r\n8EFCmF9lZgyR2HHc56DJxTGYjV02uixr+BP4EisDVyEhf8WTctA2UaUR4tWu\r\ndRvw3zU1zl11y9oWXEIQ13QZh+P7IMrRsqrlIUmlMZkRWeZzWwTcUIAH1aX/\r\nuic53+n1LvRVjqpQx98uSFk4H529X+NBAogBXFll1HFAUnWkPS3Ab86o+Q5p\r\n25NM7NpOrvCyYjh1wG6jTNTogY2NOxPh4fYEjpeO9MLuLi+mJTCCAr9cl2Uf\r\nl+XMr8lleYrUs5Amh0wIj9rrH1UZ+PklYQ7dFAM/uUNcMv5LdnOHTxtduSLk\r\nTyFcq1ScUc4KsFZS3mJK+GMYvEQjh/31C1Lao2TozjebaR3yWs4pKabiT/hH\r\nbIlF6QVHfFQValYDPZ3PthZr7tp6QP4Yob6wd3LYAeexsAm+4CMsu36FtaVI\r\n1872OmSv3WuLirvSdsk7nQrE+mXZEse8EWA=\r\n=YXpI\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"bentoprojectbot","email":"bentobot@amp.dev"},"directories":{},"maintainers":[{"name":"bentoprojectbot","email":"bentobot@amp.dev"},{"name":"kristoferbaxter","email":"kbax@me.com"},{"name":"esth","email":"esther@amp.dev"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/date-display_1.2205161914.0_1652775911871_0.6152191025101152"},"_hasShrinkwrap":false},"1.2205181800.0":{"name":"@bentoproject/date-display","version":"1.2205181800.0","description":"Displays time data that you can render in your page.","author":{"name":"Bento Authors"},"license":"Apache-2.0","main":"./dist/web-component.js","module":"./dist/web-component.module.js","exports":{".":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./web-component":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./preact":{"import":"./dist/component-preact.module.js","require":"./dist/component-preact.js"},"./react":{"import":"./dist/component-react.module.js","require":"./dist/component-react.js"},"./web-component.css":"./dist/web-component.css"},"repository":{"type":"git","url":"git+https://github.com/ampproject/amphtml.git","directory":"extensions/amp-date-display/1.0"},"homepage":"https://github.com/ampproject/amphtml/tree/main/extensions/amp-date-display/1.0","peerDependencies":{"preact":"^10.2.1","react":"^17.0.0"},"dependencies":{"@bentoproject/core":"0.2205181800.0"},"readme":"# Bento Date Display\n\nDisplays time data that you can render in your page. By providing specific [attributes](#attributes) in the Bento Date Display tag, the Bento Date Display extension returns a list of time parameters, which you can pass to [an amp-mustache template](../../amp-mustache/amp-mustache.md) for rendering. Refer to the [list below for each returned time parameter](#returned-time-parameters).\n\n## Web Component\n\nYou must include each Bento component's required CSS library to guarantee proper loading and before adding custom styles. Or use the light-weight pre-upgrade styles available inline. See [Layout and style](#layout-and-style).\n\n### Example: Import via npm\n\nInstall via npm:\n\n```sh\nnpm install @bentoproject/bento-date-display\n```\n\n```javascript\nimport {defineElement as defineBentoDateDisplay} from '@bentoproject/bento-date-display';\ndefineBentoDateDisplay();\n```\n\n### Include via `<script>`\n\n```html\n<script type=\"module\" src=\"https://cdn.ampproject.org/bento.mjs\" crossorigin=\"anonymous\"></script>\n<script nomodule src=\"https://cdn.ampproject.org/bento.js\" crossorigin=\"anonymous\"></script>\n<!-- Include bento-mustache.js to use mustache templates with this component -->\n<script async src=\"https://cdn.ampproject.org/v0/bento-mustache.js\"></script>\n<script type=\"module\" src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.mjs\" crossorigin=\"anonymous\"></script>\n<script nomodule src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.js\" crossorigin=\"anonymous\"></script>\n<link rel=\"stylesheet\" href=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.css\" crossorigin=\"anonymous\">\n```\n\n### Example\n\n```html\n<!DOCTYPE html>\n<html>\n  <head>\n    <script\n      type=\"module\"\n      async\n      src=\"https://cdn.ampproject.org/bento.mjs\"\n    ></script>\n    <script nomodule src=\"https://cdn.ampproject.org/bento.js\"></script>\n    <script async src=\"https://cdn.ampproject.org/v0/bento-mustache.js\"></script>\n    <script\n      type=\"module\"\n      async\n      src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.mjs\"\n    ></script>\n    <script\n      nomodule\n      async\n      src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.js\"\n    ></script>\n    <link\n      rel=\"stylesheet\"\n      type=\"text/css\"\n      href=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.css\"\n    />\n  </head>\n  <body>\n    <bento-date-display\n      datetime=\"2021-09-09T16:02:08.494Z\"\n      displayIn=\"utc\"\n      locale=\"en-GB\"\n    >\n      <template>\n        <div>ISO: {{iso}}; locale: {{localeString}}</div>\n      </template>\n    </bento-date-display>\n  </body>\n</html>\n```\n\n### Interactivity and API usage\n\nThe Bento Date Display component does not have an imperative API. However, the Bento Date Display Web Component will render a mustache-template, provided by the consumer in a `<template>` tag with `type=\"amp-mustache\"`. This template may interpolate date-related parameters. See the [Returned Time Parameters section](#returned-time-parameters) for a full list of all the available parameters.\n\n### Layout and style\n\nEach Bento component has a small CSS library you must include to guarantee proper loading without [content shifts](https://web.dev/cls/). Because of order-based specificity, you must manually ensure that stylesheets are included before any custom styles.\n\n```html\n<link rel=\"stylesheet\" type=\"text/css\" href=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.css\">\n```\n\nAlternatively, you may also make the light-weight pre-upgrade styles available inline:\n\n```html\n<style data-bento-boilerplate>\n  bento-date-display {\n    display: block;\n    overflow: hidden;\n    position: relative;\n  }\n</style>\n```\n\n### Attributes\n\n#### `datetime`\n\nThe `datetime` attribute specifies the date and time in a standard ISO 8601 date\nstring (e.g. 2017-08-02T15:05:05.000Z) or the string `now`. If set to `now`,\n`bento-date-display` will use the time the page loaded to render its template.\n\n#### `timestamp-ms`\n\nThe `timestamp-ms` attribute specifies the date and time using the number of\nmilliseconds since 1970-01-01T0:00:00.000Z\n\n#### `timestamp-seconds`\n\nThe `timestamp-seconds` attribute specifies the date and time using the number\nof seconds since 1970-01-01T0:00:00.000Z\n\n#### `locale` (optional)\n\nAn internationalization language string for each timer unit. The default value\nis `en` (for English). This attribute supports all values that are supported by\nthe user's browser.\n\n#### `display-in` (optional)\n\nIf set to the value `utc`, the `display-in` attribute will convert the given\ndate to UTC.\n\n#### `offset-seconds` (optional)\n\nThe `offset-seconds` attribute specifies an integer number of seconds to shift\nthe given date.\n\n#### `data-options-\\*` (optional)\n\nThe `data-options-*` supports all the options under [Intl.DateTimeFormat.options](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/DateTimeFormat#parameters)\nparameter that specifies the formatting style to use for `localeString` format.\nValid attributes include: `data-options-date-style`, `data-options-time-style`, etc.\n\nNote that if `display-in` attrubute is set to `utc`, the value of\n`data-options-time-zone` will automatically be converted to `UTC`.\n\n### Styling\n\nYou may use the `bento-date-display` element selector to style the Bento Date Display component freely.\n\n---\n\n## Preact/React Component\n\n### Import via npm\n\n```sh\nnpm install @bentoproject/date-display\n```\n\n```javascript\nimport React from 'react';\nimport {BentoDateDisplay} from '@bentoproject/date-display/react';\nimport '@bentoproject/date-display/styles.css';\n\nfunction App() {\n  return (\n    <BentoDateDisplay\n      datetime={dateTime}\n      displayIn={displayIn}\n      locale={locale}\n      render={(date) => (\n        <div>{`ISO: ${date.iso}; locale: ${date.localeString}`}</div>\n      )}\n    />\n  );\n}\n```\n\n### Interactivity and API usage\n\nThe Bento Date Display component does not have an imperative API. However, the Bento Date Display Preact/React component does accept a `render` prop that renders the consumer's template. This `render` prop should be a function which the Bento Date Display Preact/React component can use to render its template. The `render` callback will be provided a variety of date-related parameters for consumers to interpolate in the rendered template. See the [`render` prop section](#render) for more information.\n\n### Layout and style\n\nThe Bento Date Display Preact/React component allows consumers to render their own templates. These templates may use inline styles, `<style>` tags, Preact/React components that import their own stylesheets.\n\n### Props\n\n#### `datetime`\n\nRequired prop. Denotes the date and time as a Date, String, or Number. If String, must be a standard ISO 8601 date string (e.g. 2017-08-02T15:05:05.000Z) or the string `now`. If set to `now`, it will use the time the page loaded to render its template. If Number, must be a POSIX epoch value in milliseconds.\n\n#### `displayIn`\n\nOptional prop that can be either `\"utc\"` or `\"local\"` and defaults to `\"local\"`. This prop indicates what timezone to display the date in. If set to the value `\"utc\"`, the component will convert the given date to UTC.\n\n#### `locale`\n\nAn internationalization language string for each timer unit. The default value is `en` (for English). This prop supports all values that are supported by the user's browser.\n\n#### `localeOptions`\n\nThe `localeOptions` object supports all the options under [Intl.DateTimeFormat.options](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/DateTimeFormat#parameters) parameter that specifies the formatting style to use for `localeString` format.\n\nNote that if the `displayIn` prop is set to `utc`, the value of `localeOptions.timeZone` will automatically be converted to `UTC`.\n\n#### `render`\n\nOptional callback that should render a template. The callback will be provided an object with properties/values related to the date expressed in `datetime`.\n\nBy default, the Bento Date Display component will display the [`localeString` form of the Date](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/toLocaleString) for the given locale and localeOption. See the [Returned Time Parameters section](#returned-time-parameters) for more details on how each property will be displayed.\n\n```typescript\n(dateParams: DateParams) => JSXInternal.Element\ninterface DateParams {\n  day: number;\n  dayName: string;\n  dayNameShort: string;\n  dayPeriod: string;\n  dayTwoDigit: string;\n  hour: number;\n  hour12: number;\n  hour12TwoDigit: string;\n  hourTwoDigit: string;\n  iso: string;\n  localeString: string;\n  minute: number;\n  minuteTwoDigit: string;\n  month: number;\n  monthName: string;\n  monthNameShort: string;\n  monthTwoDigit: string;\n  second: number;\n  secondTwoDigit: string;\n  timeZoneName: string;\n  timeZoneNameShort: string;\n  year: number;\n  yearTwoDi: string;\n}\n```\n\n### Returned Time Parameters\n\nThis table lists the format you can specify in your Mustache template:\n\n| Format            | Meaning                                                       |\n| ----------------- | ------------------------------------------------------------- |\n| day               | 1, 2, ...12, 13, etc.                                         |\n| dayName           | string,                                                       |\n| dayNameShort      | string,                                                       |\n| dayPeriod         | string,                                                       |\n| dayTwoDigit       | 01, 02, 03, ..., 12, 13, etc.                                 |\n| hour              | 0, 1, 2, 3, ..., 12, 13, ..., 22, 23                          |\n| hour12            | 1, 2, 3, ..., 12, 1, 2, ..., 11, 12                           |\n| hour12TwoDigit    | 01, 02, ..., 12, 01, 02, ..., 11, 12                          |\n| hourTwoDigit      | 00, 01, 02, ..., 12, 13, ..., 22, 23                          |\n| iso               | A standard ISO8601 date string e.g. 2019-01-23T15:31:21.213Z, |\n| localeString      | A string with a language sensitive representation.            |\n| minute            | 0, 1, 2, ..., 58, 59                                          |\n| minuteTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| month             | 1, 2, 3, ..., 12                                              |\n| monthName         | Internationalized month name string.                          |\n| monthNameShort    | Internationalized abbreviated month name string.,             |\n| monthTwoDigit     | 01, 02, ..., 11, 12                                           |\n| second            | 0, 1, 2, ..., 58, 59                                          |\n| secondTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| timeZoneName      | Internationalized timezone, like `Pacific Daylight Time`      |\n| timeZoneNameShort | Internationalized timezone, abbreviated, like `PST`           |\n| year              | 0, 1, 2, ..., 1999, 2000, 2001, etc.                          |\n| yearTwoDigit      | 00, 01, 02, ..., 17, 18, 19, ..., 98, 99                      |\n","readmeFilename":"README.md","gitHead":"fb3f61c46e2221f0f2e1dd836127cce386c7bbda","bugs":{"url":"https://github.com/ampproject/amphtml/issues"},"_id":"@bentoproject/date-display@1.2205181800.0","_nodeVersion":"16.15.0","_npmVersion":"8.5.5","dist":{"integrity":"sha512-pjDk3EgwrEXNQ7BD5dgruZRMNYxL8SbWNIjqQ0C7hopFeUdwUaY/ttncN7om/NlIp3XDVfHyspIJOHEdFQWyOg==","shasum":"94f249b580e7a8b178e2b26a4ab020474a378f8e","tarball":"https://registry.npmjs.org/@bentoproject/date-display/-/date-display-1.2205181800.0.tgz","fileCount":29,"unpackedSize":672051,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIG5Nq+MN663hb8HbSK82YpSmiJ3Ft/DbeS8+OXbgn8oZAiB1IgKjkZwbgdvie8OlE4WSzGf5Y+fPjRomNkX7bGsKuA=="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJihf8gACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmobGA/7B+URu6uI3YhWT4q4K78hmRvwZOCZP6xfMreoXVFvDJpH5pBn\r\nnj2R/TDHSEm2WnojttOKxS+pQGwnnCy/vOCtaU2kMJfJaVSzXlrxkgno1TKC\r\nUg7FyPOiVoeIyTz8qbncdNxP6BOEYZzwH2IC/HDSIPG7YJH6zolL5pEKK0KY\r\nIzhJm30UHLts+BF2v7QurueIctruGAgFD+sbcBo5s6DXijPIoOW4k9jfx1ev\r\nUQn14jddHEVEGTG9E3ZU/N4KmtJX66993oCqkWUfjID1koXa2RxJbSnGm8EL\r\nkBQzuF+zEy3G/yowHcJNhI/zLaYnRQ2z9wkcPianQ4GbOqpP4z38skh88baH\r\nNsDeb9qdPDnlkpC0HzeSYuAf9+B1hACjRi2v28CM1NHshndnJYNilw1HMP7F\r\nXkz+HvPh6mjzl6O3GwnnOxy5qLR1sLH4eMI3e6L7zyeMUO8gCs/+7hkXEwcF\r\nCMn9g3BHPQPYzIZOoi+QvdVrJaAiR+64/iPlYCEpOSPMOX3MqTHjcnnj5S0N\r\n6iiNz8APZ2pwBv9Vct9v9guaETFmI/BdAdwl4TPjK0C5/xCMXe/SSe3yjnR6\r\nxR3wQ9N0tns3FGuK04Pu/xy2mpCC9hifrMQ18i+OrjhrngQWeq0G3XLEpPxY\r\ny+XeiewlUPLN5cjSTDaeKkdw15fNbPQbef4=\r\n=cUWR\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"bentoprojectbot","email":"bentobot@amp.dev"},"directories":{},"maintainers":[{"name":"bentoprojectbot","email":"bentobot@amp.dev"},{"name":"kristoferbaxter","email":"kbax@me.com"},{"name":"esth","email":"esther@amp.dev"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/date-display_1.2205181800.0_1652948768200_0.021270016820038817"},"_hasShrinkwrap":false},"1.2205191749.0":{"name":"@bentoproject/date-display","version":"1.2205191749.0","description":"Displays time data that you can render in your page.","author":{"name":"Bento Authors"},"license":"Apache-2.0","main":"./dist/web-component.js","module":"./dist/web-component.module.js","exports":{".":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./web-component":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./preact":{"import":"./dist/component-preact.module.js","require":"./dist/component-preact.js"},"./react":{"import":"./dist/component-react.module.js","require":"./dist/component-react.js"},"./web-component.css":"./dist/web-component.css"},"repository":{"type":"git","url":"git+https://github.com/ampproject/amphtml.git","directory":"extensions/amp-date-display/1.0"},"homepage":"https://github.com/ampproject/amphtml/tree/main/extensions/amp-date-display/1.0","peerDependencies":{"preact":"^10.2.1","react":"^17.0.0"},"dependencies":{"@bentoproject/core":"0.2205191749.0"},"readme":"# Bento Date Display\n\nDisplays time data that you can render in your page. By providing specific [attributes](#attributes) in the Bento Date Display tag, the Bento Date Display extension returns a list of time parameters, which you can pass to [an amp-mustache template](../../amp-mustache/amp-mustache.md) for rendering. Refer to the [list below for each returned time parameter](#returned-time-parameters).\n\n## Web Component\n\nYou must include each Bento component's required CSS library to guarantee proper loading and before adding custom styles. Or use the light-weight pre-upgrade styles available inline. See [Layout and style](#layout-and-style).\n\n### Example: Import via npm\n\nInstall via npm:\n\n```sh\nnpm install @bentoproject/bento-date-display\n```\n\n```javascript\nimport {defineElement as defineBentoDateDisplay} from '@bentoproject/bento-date-display';\ndefineBentoDateDisplay();\n```\n\n### Include via `<script>`\n\n```html\n<script type=\"module\" src=\"https://cdn.ampproject.org/bento.mjs\" crossorigin=\"anonymous\"></script>\n<script nomodule src=\"https://cdn.ampproject.org/bento.js\" crossorigin=\"anonymous\"></script>\n<!-- Include bento-mustache.js to use mustache templates with this component -->\n<script async src=\"https://cdn.ampproject.org/v0/bento-mustache.js\"></script>\n<script type=\"module\" src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.mjs\" crossorigin=\"anonymous\"></script>\n<script nomodule src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.js\" crossorigin=\"anonymous\"></script>\n<link rel=\"stylesheet\" href=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.css\" crossorigin=\"anonymous\">\n```\n\n### Example\n\n```html\n<!DOCTYPE html>\n<html>\n  <head>\n    <script\n      type=\"module\"\n      async\n      src=\"https://cdn.ampproject.org/bento.mjs\"\n    ></script>\n    <script nomodule src=\"https://cdn.ampproject.org/bento.js\"></script>\n    <script async src=\"https://cdn.ampproject.org/v0/bento-mustache.js\"></script>\n    <script\n      type=\"module\"\n      async\n      src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.mjs\"\n    ></script>\n    <script\n      nomodule\n      async\n      src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.js\"\n    ></script>\n    <link\n      rel=\"stylesheet\"\n      type=\"text/css\"\n      href=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.css\"\n    />\n  </head>\n  <body>\n    <bento-date-display\n      datetime=\"2021-09-09T16:02:08.494Z\"\n      displayIn=\"utc\"\n      locale=\"en-GB\"\n    >\n      <template>\n        <div>ISO: {{iso}}; locale: {{localeString}}</div>\n      </template>\n    </bento-date-display>\n  </body>\n</html>\n```\n\n### Interactivity and API usage\n\nThe Bento Date Display component does not have an imperative API. However, the Bento Date Display Web Component will render a mustache-template, provided by the consumer in a `<template>` tag with `type=\"amp-mustache\"`. This template may interpolate date-related parameters. See the [Returned Time Parameters section](#returned-time-parameters) for a full list of all the available parameters.\n\n### Layout and style\n\nEach Bento component has a small CSS library you must include to guarantee proper loading without [content shifts](https://web.dev/cls/). Because of order-based specificity, you must manually ensure that stylesheets are included before any custom styles.\n\n```html\n<link rel=\"stylesheet\" type=\"text/css\" href=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.css\">\n```\n\nAlternatively, you may also make the light-weight pre-upgrade styles available inline:\n\n```html\n<style data-bento-boilerplate>\n  bento-date-display {\n    display: block;\n    overflow: hidden;\n    position: relative;\n  }\n</style>\n```\n\n### Attributes\n\n#### `datetime`\n\nThe `datetime` attribute specifies the date and time in a standard ISO 8601 date\nstring (e.g. 2017-08-02T15:05:05.000Z) or the string `now`. If set to `now`,\n`bento-date-display` will use the time the page loaded to render its template.\n\n#### `timestamp-ms`\n\nThe `timestamp-ms` attribute specifies the date and time using the number of\nmilliseconds since 1970-01-01T0:00:00.000Z\n\n#### `timestamp-seconds`\n\nThe `timestamp-seconds` attribute specifies the date and time using the number\nof seconds since 1970-01-01T0:00:00.000Z\n\n#### `locale` (optional)\n\nAn internationalization language string for each timer unit. The default value\nis `en` (for English). This attribute supports all values that are supported by\nthe user's browser.\n\n#### `display-in` (optional)\n\nIf set to the value `utc`, the `display-in` attribute will convert the given\ndate to UTC.\n\n#### `offset-seconds` (optional)\n\nThe `offset-seconds` attribute specifies an integer number of seconds to shift\nthe given date.\n\n#### `data-options-\\*` (optional)\n\nThe `data-options-*` supports all the options under [Intl.DateTimeFormat.options](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/DateTimeFormat#parameters)\nparameter that specifies the formatting style to use for `localeString` format.\nValid attributes include: `data-options-date-style`, `data-options-time-style`, etc.\n\nNote that if `display-in` attrubute is set to `utc`, the value of\n`data-options-time-zone` will automatically be converted to `UTC`.\n\n### Styling\n\nYou may use the `bento-date-display` element selector to style the Bento Date Display component freely.\n\n---\n\n## Preact/React Component\n\n### Import via npm\n\n```sh\nnpm install @bentoproject/date-display\n```\n\n```javascript\nimport React from 'react';\nimport {BentoDateDisplay} from '@bentoproject/date-display/react';\nimport '@bentoproject/date-display/styles.css';\n\nfunction App() {\n  return (\n    <BentoDateDisplay\n      datetime={dateTime}\n      displayIn={displayIn}\n      locale={locale}\n      render={(date) => (\n        <div>{`ISO: ${date.iso}; locale: ${date.localeString}`}</div>\n      )}\n    />\n  );\n}\n```\n\n### Interactivity and API usage\n\nThe Bento Date Display component does not have an imperative API. However, the Bento Date Display Preact/React component does accept a `render` prop that renders the consumer's template. This `render` prop should be a function which the Bento Date Display Preact/React component can use to render its template. The `render` callback will be provided a variety of date-related parameters for consumers to interpolate in the rendered template. See the [`render` prop section](#render) for more information.\n\n### Layout and style\n\nThe Bento Date Display Preact/React component allows consumers to render their own templates. These templates may use inline styles, `<style>` tags, Preact/React components that import their own stylesheets.\n\n### Props\n\n#### `datetime`\n\nRequired prop. Denotes the date and time as a Date, String, or Number. If String, must be a standard ISO 8601 date string (e.g. 2017-08-02T15:05:05.000Z) or the string `now`. If set to `now`, it will use the time the page loaded to render its template. If Number, must be a POSIX epoch value in milliseconds.\n\n#### `displayIn`\n\nOptional prop that can be either `\"utc\"` or `\"local\"` and defaults to `\"local\"`. This prop indicates what timezone to display the date in. If set to the value `\"utc\"`, the component will convert the given date to UTC.\n\n#### `locale`\n\nAn internationalization language string for each timer unit. The default value is `en` (for English). This prop supports all values that are supported by the user's browser.\n\n#### `localeOptions`\n\nThe `localeOptions` object supports all the options under [Intl.DateTimeFormat.options](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/DateTimeFormat#parameters) parameter that specifies the formatting style to use for `localeString` format.\n\nNote that if the `displayIn` prop is set to `utc`, the value of `localeOptions.timeZone` will automatically be converted to `UTC`.\n\n#### `render`\n\nOptional callback that should render a template. The callback will be provided an object with properties/values related to the date expressed in `datetime`.\n\nBy default, the Bento Date Display component will display the [`localeString` form of the Date](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/toLocaleString) for the given locale and localeOption. See the [Returned Time Parameters section](#returned-time-parameters) for more details on how each property will be displayed.\n\n```typescript\n(dateParams: DateParams) => JSXInternal.Element\ninterface DateParams {\n  day: number;\n  dayName: string;\n  dayNameShort: string;\n  dayPeriod: string;\n  dayTwoDigit: string;\n  hour: number;\n  hour12: number;\n  hour12TwoDigit: string;\n  hourTwoDigit: string;\n  iso: string;\n  localeString: string;\n  minute: number;\n  minuteTwoDigit: string;\n  month: number;\n  monthName: string;\n  monthNameShort: string;\n  monthTwoDigit: string;\n  second: number;\n  secondTwoDigit: string;\n  timeZoneName: string;\n  timeZoneNameShort: string;\n  year: number;\n  yearTwoDi: string;\n}\n```\n\n### Returned Time Parameters\n\nThis table lists the format you can specify in your Mustache template:\n\n| Format            | Meaning                                                       |\n| ----------------- | ------------------------------------------------------------- |\n| day               | 1, 2, ...12, 13, etc.                                         |\n| dayName           | string,                                                       |\n| dayNameShort      | string,                                                       |\n| dayPeriod         | string,                                                       |\n| dayTwoDigit       | 01, 02, 03, ..., 12, 13, etc.                                 |\n| hour              | 0, 1, 2, 3, ..., 12, 13, ..., 22, 23                          |\n| hour12            | 1, 2, 3, ..., 12, 1, 2, ..., 11, 12                           |\n| hour12TwoDigit    | 01, 02, ..., 12, 01, 02, ..., 11, 12                          |\n| hourTwoDigit      | 00, 01, 02, ..., 12, 13, ..., 22, 23                          |\n| iso               | A standard ISO8601 date string e.g. 2019-01-23T15:31:21.213Z, |\n| localeString      | A string with a language sensitive representation.            |\n| minute            | 0, 1, 2, ..., 58, 59                                          |\n| minuteTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| month             | 1, 2, 3, ..., 12                                              |\n| monthName         | Internationalized month name string.                          |\n| monthNameShort    | Internationalized abbreviated month name string.,             |\n| monthTwoDigit     | 01, 02, ..., 11, 12                                           |\n| second            | 0, 1, 2, ..., 58, 59                                          |\n| secondTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| timeZoneName      | Internationalized timezone, like `Pacific Daylight Time`      |\n| timeZoneNameShort | Internationalized timezone, abbreviated, like `PST`           |\n| year              | 0, 1, 2, ..., 1999, 2000, 2001, etc.                          |\n| yearTwoDigit      | 00, 01, 02, ..., 17, 18, 19, ..., 98, 99                      |\n","readmeFilename":"README.md","gitHead":"83c369066eb9c7dfccb12aea936f29a84bad30fc","bugs":{"url":"https://github.com/ampproject/amphtml/issues"},"_id":"@bentoproject/date-display@1.2205191749.0","_nodeVersion":"16.15.0","_npmVersion":"8.5.5","dist":{"integrity":"sha512-4+7mZAoNIpIGArN2XkiVXmDfIjSu1rSIF2mGlTvHrjreEass5/GU6MJQgEm44JJx2IL7SeOiYCn1JSeOVxzRPg==","shasum":"827d66ee0598fa544d4fcc4f670b1f75ad5df78b","tarball":"https://registry.npmjs.org/@bentoproject/date-display/-/date-display-1.2205191749.0.tgz","fileCount":29,"unpackedSize":672051,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIG3I2IhBJpv4004u0dsJjtLs5xgRfnLvuGVbiDAXR+VHAiBdc7eMuZnXt3uabFm7PZxX9ZlVJ74KfyA/6J/DtCIrcQ=="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJih1CcACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmq71xAAm6lpPavNSP5dpt4ny5Bcf/pZP1PO/5s1OP4McWdcDdy6Z7MW\r\nqWXSCk3lXorLFIjI7d7+IhSciJhVPD0iqE7KTXep507v40fKvy8hXq+XFpvU\r\nMvtrpipT93oiOZuWFImZEjU7gHJaIWAIXT5SpO8LhEfqRagderpwrrgn4hxM\r\nYkzveZ1ZJm3i2uORpBMTaPtPGgMjpKsQeVMV3twP4WD/iCb0HBgWxAb2jWoh\r\ncYDn/gitMx/zgyebhNM3uPk/rtN2PbAJDatd+8r2Kcn96+Zd7ouNbzdCTKva\r\n8dCZw9zOn27N2iwWyyxOlfpSa7wcl9GSZ/J/c9F+2y0X1DrOjeR/Bsve7v0W\r\nwB5HlJ/eG7syen+WS8Z1gZV3nWJdo51dcDTiuhUgUIOTze9eczQYE8L1r9Qe\r\n1Ywx48hfZMuXBjLwWPgoVgOwgQpvfOmE9IcmuInuj2qii4nCY1PUCXCC5Bvx\r\ngWAG3mm6ISDGoFa+rRirhyXetp/LQe7nooFo8kvQJ1NC4J6/9+WdpGPbAcu4\r\nTNepbuxDS/IqYc/OZCkyxB69L5rkhume37cswu+62QPfNIzZGMxYY9DUTclP\r\nwRdfn2peq5Yltf3zhjURH62ns4bRt5lorJ4KzEfQzG5lL5QiK/Qv5ioS5l7W\r\nTETrXudRvNg92BwSeOZjpr1aRlWal0HuHIQ=\r\n=NNxy\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"bentoprojectbot","email":"bentobot@amp.dev"},"directories":{},"maintainers":[{"name":"bentoprojectbot","email":"bentobot@amp.dev"},{"name":"kristoferbaxter","email":"kbax@me.com"},{"name":"esth","email":"esther@amp.dev"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/date-display_1.2205191749.0_1653035164672_0.20377984969705976"},"_hasShrinkwrap":false},"1.2205232225.0":{"name":"@bentoproject/date-display","version":"1.2205232225.0","description":"Displays time data that you can render in your page.","author":{"name":"Bento Authors"},"license":"Apache-2.0","main":"./dist/web-component.js","module":"./dist/web-component.module.js","exports":{".":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./web-component":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./preact":{"import":"./dist/component-preact.module.js","require":"./dist/component-preact.js"},"./react":{"import":"./dist/component-react.module.js","require":"./dist/component-react.js"},"./web-component.css":"./dist/web-component.css"},"repository":{"type":"git","url":"git+https://github.com/ampproject/amphtml.git","directory":"extensions/amp-date-display/1.0"},"homepage":"https://github.com/ampproject/amphtml/tree/main/extensions/amp-date-display/1.0","peerDependencies":{"preact":"^10.2.1","react":"^17.0.0"},"dependencies":{"@bentoproject/core":"0.2205232225.0"},"readme":"# Bento Date Display\n\nDisplays time data that you can render in your page. By providing specific [attributes](#attributes) in the Bento Date Display tag, the Bento Date Display extension returns a list of time parameters, which you can pass to [an amp-mustache template](../../amp-mustache/amp-mustache.md) for rendering. Refer to the [list below for each returned time parameter](#returned-time-parameters).\n\n## Web Component\n\nYou must include each Bento component's required CSS library to guarantee proper loading and before adding custom styles. Or use the light-weight pre-upgrade styles available inline. See [Layout and style](#layout-and-style).\n\n### Example: Import via npm\n\nInstall via npm:\n\n```sh\nnpm install @bentoproject/bento-date-display\n```\n\n```javascript\nimport {defineElement as defineBentoDateDisplay} from '@bentoproject/bento-date-display';\ndefineBentoDateDisplay();\n```\n\n### Include via `<script>`\n\n```html\n<script type=\"module\" src=\"https://cdn.ampproject.org/bento.mjs\" crossorigin=\"anonymous\"></script>\n<script nomodule src=\"https://cdn.ampproject.org/bento.js\" crossorigin=\"anonymous\"></script>\n<!-- Include bento-mustache.js to use mustache templates with this component -->\n<script async src=\"https://cdn.ampproject.org/v0/bento-mustache.js\"></script>\n<script type=\"module\" src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.mjs\" crossorigin=\"anonymous\"></script>\n<script nomodule src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.js\" crossorigin=\"anonymous\"></script>\n<link rel=\"stylesheet\" href=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.css\" crossorigin=\"anonymous\">\n```\n\n### Example\n\n```html\n<!DOCTYPE html>\n<html>\n  <head>\n    <script\n      type=\"module\"\n      async\n      src=\"https://cdn.ampproject.org/bento.mjs\"\n    ></script>\n    <script nomodule src=\"https://cdn.ampproject.org/bento.js\"></script>\n    <script async src=\"https://cdn.ampproject.org/v0/bento-mustache.js\"></script>\n    <script\n      type=\"module\"\n      async\n      src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.mjs\"\n    ></script>\n    <script\n      nomodule\n      async\n      src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.js\"\n    ></script>\n    <link\n      rel=\"stylesheet\"\n      type=\"text/css\"\n      href=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.css\"\n    />\n  </head>\n  <body>\n    <bento-date-display\n      datetime=\"2021-09-09T16:02:08.494Z\"\n      displayIn=\"utc\"\n      locale=\"en-GB\"\n    >\n      <template>\n        <div>ISO: {{iso}}; locale: {{localeString}}</div>\n      </template>\n    </bento-date-display>\n  </body>\n</html>\n```\n\n### Interactivity and API usage\n\nThe Bento Date Display component does not have an imperative API. However, the Bento Date Display Web Component will render a mustache-template, provided by the consumer in a `<template>` tag with `type=\"amp-mustache\"`. This template may interpolate date-related parameters. See the [Returned Time Parameters section](#returned-time-parameters) for a full list of all the available parameters.\n\n### Layout and style\n\nEach Bento component has a small CSS library you must include to guarantee proper loading without [content shifts](https://web.dev/cls/). Because of order-based specificity, you must manually ensure that stylesheets are included before any custom styles.\n\n```html\n<link rel=\"stylesheet\" type=\"text/css\" href=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.css\">\n```\n\nAlternatively, you may also make the light-weight pre-upgrade styles available inline:\n\n```html\n<style data-bento-boilerplate>\n  bento-date-display {\n    display: block;\n    overflow: hidden;\n    position: relative;\n  }\n</style>\n```\n\n### Attributes\n\n#### `datetime`\n\nThe `datetime` attribute specifies the date and time in a standard ISO 8601 date\nstring (e.g. 2017-08-02T15:05:05.000Z) or the string `now`. If set to `now`,\n`bento-date-display` will use the time the page loaded to render its template.\n\n#### `timestamp-ms`\n\nThe `timestamp-ms` attribute specifies the date and time using the number of\nmilliseconds since 1970-01-01T0:00:00.000Z\n\n#### `timestamp-seconds`\n\nThe `timestamp-seconds` attribute specifies the date and time using the number\nof seconds since 1970-01-01T0:00:00.000Z\n\n#### `locale` (optional)\n\nAn internationalization language string for each timer unit. The default value\nis `en` (for English). This attribute supports all values that are supported by\nthe user's browser.\n\n#### `display-in` (optional)\n\nIf set to the value `utc`, the `display-in` attribute will convert the given\ndate to UTC.\n\n#### `offset-seconds` (optional)\n\nThe `offset-seconds` attribute specifies an integer number of seconds to shift\nthe given date.\n\n#### `data-options-\\*` (optional)\n\nThe `data-options-*` supports all the options under [Intl.DateTimeFormat.options](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/DateTimeFormat#parameters)\nparameter that specifies the formatting style to use for `localeString` format.\nValid attributes include: `data-options-date-style`, `data-options-time-style`, etc.\n\nNote that if `display-in` attrubute is set to `utc`, the value of\n`data-options-time-zone` will automatically be converted to `UTC`.\n\n### Styling\n\nYou may use the `bento-date-display` element selector to style the Bento Date Display component freely.\n\n---\n\n## Preact/React Component\n\n### Import via npm\n\n```sh\nnpm install @bentoproject/date-display\n```\n\n```javascript\nimport React from 'react';\nimport {BentoDateDisplay} from '@bentoproject/date-display/react';\nimport '@bentoproject/date-display/styles.css';\n\nfunction App() {\n  return (\n    <BentoDateDisplay\n      datetime={dateTime}\n      displayIn={displayIn}\n      locale={locale}\n      render={(date) => (\n        <div>{`ISO: ${date.iso}; locale: ${date.localeString}`}</div>\n      )}\n    />\n  );\n}\n```\n\n### Interactivity and API usage\n\nThe Bento Date Display component does not have an imperative API. However, the Bento Date Display Preact/React component does accept a `render` prop that renders the consumer's template. This `render` prop should be a function which the Bento Date Display Preact/React component can use to render its template. The `render` callback will be provided a variety of date-related parameters for consumers to interpolate in the rendered template. See the [`render` prop section](#render) for more information.\n\n### Layout and style\n\nThe Bento Date Display Preact/React component allows consumers to render their own templates. These templates may use inline styles, `<style>` tags, Preact/React components that import their own stylesheets.\n\n### Props\n\n#### `datetime`\n\nRequired prop. Denotes the date and time as a Date, String, or Number. If String, must be a standard ISO 8601 date string (e.g. 2017-08-02T15:05:05.000Z) or the string `now`. If set to `now`, it will use the time the page loaded to render its template. If Number, must be a POSIX epoch value in milliseconds.\n\n#### `displayIn`\n\nOptional prop that can be either `\"utc\"` or `\"local\"` and defaults to `\"local\"`. This prop indicates what timezone to display the date in. If set to the value `\"utc\"`, the component will convert the given date to UTC.\n\n#### `locale`\n\nAn internationalization language string for each timer unit. The default value is `en` (for English). This prop supports all values that are supported by the user's browser.\n\n#### `localeOptions`\n\nThe `localeOptions` object supports all the options under [Intl.DateTimeFormat.options](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/DateTimeFormat#parameters) parameter that specifies the formatting style to use for `localeString` format.\n\nNote that if the `displayIn` prop is set to `utc`, the value of `localeOptions.timeZone` will automatically be converted to `UTC`.\n\n#### `render`\n\nOptional callback that should render a template. The callback will be provided an object with properties/values related to the date expressed in `datetime`.\n\nBy default, the Bento Date Display component will display the [`localeString` form of the Date](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/toLocaleString) for the given locale and localeOption. See the [Returned Time Parameters section](#returned-time-parameters) for more details on how each property will be displayed.\n\n```typescript\n(dateParams: DateParams) => JSXInternal.Element\ninterface DateParams {\n  day: number;\n  dayName: string;\n  dayNameShort: string;\n  dayPeriod: string;\n  dayTwoDigit: string;\n  hour: number;\n  hour12: number;\n  hour12TwoDigit: string;\n  hourTwoDigit: string;\n  iso: string;\n  localeString: string;\n  minute: number;\n  minuteTwoDigit: string;\n  month: number;\n  monthName: string;\n  monthNameShort: string;\n  monthTwoDigit: string;\n  second: number;\n  secondTwoDigit: string;\n  timeZoneName: string;\n  timeZoneNameShort: string;\n  year: number;\n  yearTwoDi: string;\n}\n```\n\n### Returned Time Parameters\n\nThis table lists the format you can specify in your Mustache template:\n\n| Format            | Meaning                                                       |\n| ----------------- | ------------------------------------------------------------- |\n| day               | 1, 2, ...12, 13, etc.                                         |\n| dayName           | string,                                                       |\n| dayNameShort      | string,                                                       |\n| dayPeriod         | string,                                                       |\n| dayTwoDigit       | 01, 02, 03, ..., 12, 13, etc.                                 |\n| hour              | 0, 1, 2, 3, ..., 12, 13, ..., 22, 23                          |\n| hour12            | 1, 2, 3, ..., 12, 1, 2, ..., 11, 12                           |\n| hour12TwoDigit    | 01, 02, ..., 12, 01, 02, ..., 11, 12                          |\n| hourTwoDigit      | 00, 01, 02, ..., 12, 13, ..., 22, 23                          |\n| iso               | A standard ISO8601 date string e.g. 2019-01-23T15:31:21.213Z, |\n| localeString      | A string with a language sensitive representation.            |\n| minute            | 0, 1, 2, ..., 58, 59                                          |\n| minuteTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| month             | 1, 2, 3, ..., 12                                              |\n| monthName         | Internationalized month name string.                          |\n| monthNameShort    | Internationalized abbreviated month name string.,             |\n| monthTwoDigit     | 01, 02, ..., 11, 12                                           |\n| second            | 0, 1, 2, ..., 58, 59                                          |\n| secondTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| timeZoneName      | Internationalized timezone, like `Pacific Daylight Time`      |\n| timeZoneNameShort | Internationalized timezone, abbreviated, like `PST`           |\n| year              | 0, 1, 2, ..., 1999, 2000, 2001, etc.                          |\n| yearTwoDigit      | 00, 01, 02, ..., 17, 18, 19, ..., 98, 99                      |\n","readmeFilename":"README.md","gitHead":"ed0c674bfc87fac47bc1360a13f5d69611a1228f","bugs":{"url":"https://github.com/ampproject/amphtml/issues"},"_id":"@bentoproject/date-display@1.2205232225.0","_nodeVersion":"16.15.0","_npmVersion":"8.5.5","dist":{"integrity":"sha512-a8LJ6McInSUcbJl2IwqEJcMaVi7TyoB7r+cwvJCQr1UnS3+ZSdKapK1JbPFo0o5AQplZeZXbf5qEzghliqshAw==","shasum":"41ef779d24256563f45eb5be06a60288e658e66b","tarball":"https://registry.npmjs.org/@bentoproject/date-display/-/date-display-1.2205232225.0.tgz","fileCount":29,"unpackedSize":677013,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIA2URqENa8OP4gBBM1BV598gWPxW3mf0lNjiSRZrRFFNAiEAuChf6XdVUNBMzBwPYHNnU3YGi3ofDgyF5NcJ2Ymipbw="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJijJZgACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmqjog//a0gNdBMDt5MRm1SQLdFMYzK8TsAzPeSBUuRqHbNfB7I4dxVn\r\nLgb7YM0UIWHHYWSL3SitFqJ9G0IGw5JaGb/Oet+aFF0ri2Y5lwB6bbwJlMRi\r\nQMaUbGbeHP9JpTZFQjYbg0LT1b/xhxNWjY14eLwRRKdLIKOjFiq1Z9REC+46\r\nNdtO/RDgQPYxXtroMLszxFs52lHySnt+xz6UBAUJrErqP0jGFsRSNCiLhgRB\r\nIATeo8yk+3i+JTWICrvWMygrW3aN9SzmWhEHa2HFtrZR3zNee6JaxZUdFLX4\r\nxE9/fS49FBGl3F1fSNHATzU0EH+BjVjBbImaSlhWgB2kfT+KVPSSPb2bRxBV\r\nqMxEK5p+8jC9xzgSLaZuu2c3is4RBAB7yuVhPYIDz6R7Z+o9aoyULZRfZKyb\r\n5U56aNd2vE1SG+onCSSliOcHpibCpfSS6x2WjfZjYsA7K3G1uo13o/BQZNOi\r\nsicJUxfvKEyF7n1FnB8gek2fcvXMVYq48f/MAJyO4JQK6mFEPlqRVfpZTaSo\r\n+CBRxzQdA4GfdUU5NW7sGXYc+O3YUTMDGmbhKlPiR73r9fNBKoW/BC7S23UT\r\nvDDPtIzFmSNI2MpiOyNof6k13SDnaM2ft/zdsKgeBxxO6AyS6n9itRN2HwMJ\r\nSXDU2cMasVHIJQxu7iP6XpO720KoorjODkU=\r\n=PG27\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"bentoprojectbot","email":"bentobot@amp.dev"},"directories":{},"maintainers":[{"name":"bentoprojectbot","email":"bentobot@amp.dev"},{"name":"kristoferbaxter","email":"kbax@me.com"},{"name":"esth","email":"esther@amp.dev"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/date-display_1.2205232225.0_1653380704286_0.6903735963667113"},"_hasShrinkwrap":false},"1.2205120110.1":{"name":"@bentoproject/date-display","version":"1.2205120110.1","description":"Displays time data that you can render in your page.","author":{"name":"Bento Authors"},"license":"Apache-2.0","main":"./dist/web-component.js","module":"./dist/web-component.module.js","exports":{".":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./web-component":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./preact":{"import":"./dist/component-preact.module.js","require":"./dist/component-preact.js"},"./react":{"import":"./dist/component-react.module.js","require":"./dist/component-react.js"},"./web-component.css":"./dist/web-component.css"},"repository":{"type":"git","url":"git+https://github.com/ampproject/amphtml.git","directory":"extensions/amp-date-display/1.0"},"homepage":"https://github.com/ampproject/amphtml/tree/main/extensions/amp-date-display/1.0","peerDependencies":{"preact":"^10.2.1","react":"^17.0.0"},"dependencies":{"@bentoproject/core":"0.2205120110.1"},"gitHead":"ed0c674bfc87fac47bc1360a13f5d69611a1228f","bugs":{"url":"https://github.com/ampproject/amphtml/issues"},"_id":"@bentoproject/date-display@1.2205120110.1","_nodeVersion":"16.15.0","_npmVersion":"8.5.5","dist":{"integrity":"sha512-6kA3uKjyu5oBI5Ew0d+V1kSfOtnVN/kAAA1r1jdzrZuDF5/uf41o43wmUxEyxk5hTHK3eHhhlWGdNSQHbXCUWw==","shasum":"afef22ad4e68ee50fca7cf6c1f6282bb53c1e112","tarball":"https://registry.npmjs.org/@bentoproject/date-display/-/date-display-1.2205120110.1.tgz","fileCount":29,"unpackedSize":677013,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQD6E+hvbBK6C5IAhwsDL5klS8/Od7ttJx2TEjS2ys0ZIQIgaRd+WxBq1b/CHcDswUPGhfQ5/K2gf10hPlmuikA3erw="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJijS3vACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrnbA/+Pk1fP3RQB4lEg13bTm6zZIiltLPpTd7Re/kBxHH/bp1TbCWB\r\nUieFLkbpJNz5euWwe2HdUvAMH0eF5JBuytXqt9m2MwcrNtv7Kpa4s5o9BHXp\r\n53YmrLccbJ2V6I5A/juXv7yRqszDAD7doe14U5hJNEnR6hFOVSs0IeWEmAPN\r\nzGRcFb9Tf6TG0aMSpHCBBYDWSrjNWfkdmjr/DwXUrQ+uFpAe/ccuxt+eG1Oj\r\ncPeVAJLuniaxNTPWYnM5jFBSS7BZt5NYKeBuDukScQU4KYSQkWoD2DBflltY\r\nvHe0VKeo8oP6+Bd4cn1m+JVpZOeA7r1dugYANpTFvt3SqL1tbZZoH2Ob10d3\r\nybnIcHBh8H/9FLB7Mzd9VszpsC8kWQNGl5gwCsOLrhQUd4slm372VJXfZEYO\r\nCaBA7b1gIpPFl4jDqSx5qPzwPthCFuzpj4wxYm9fKZci+SBBfdvb2bkXBjwQ\r\nHIa0T7YrfwvZcQNf+6TNK/Rw7/zQafeOgs8fPXWPoBe9dAMZhijMgRCN+xMI\r\nATmGIU0y7YG+WiadcyWf2QiIjMdP0oH4w5Ufs05R0mmLlbj+sdjc4cdQHqG1\r\nApnecMVFc3MqUdTgXfvgiQM3Ojs4vLK3+l/npYGYP3JS2OT2ISUjVuGZ5hgS\r\nh639F0+gjMzo6TiGN48tbLegS13SXPiaru0=\r\n=itlV\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"bentoprojectbot","email":"bentobot@amp.dev"},"directories":{},"maintainers":[{"name":"bentoprojectbot","email":"bentobot@amp.dev"},{"name":"kristoferbaxter","email":"kbax@me.com"},{"name":"esth","email":"esther@amp.dev"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/date-display_1.2205120110.1_1653419503510_0.7698447746796844"},"_hasShrinkwrap":false},"1.2205251942.0":{"name":"@bentoproject/date-display","version":"1.2205251942.0","description":"Displays time data that you can render in your page.","author":{"name":"Bento Authors"},"license":"Apache-2.0","main":"./dist/web-component.js","module":"./dist/web-component.module.js","exports":{".":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./web-component":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./preact":{"import":"./dist/component-preact.module.js","require":"./dist/component-preact.js"},"./react":{"import":"./dist/component-react.module.js","require":"./dist/component-react.js"},"./web-component.css":"./dist/web-component.css"},"repository":{"type":"git","url":"git+https://github.com/ampproject/amphtml.git","directory":"extensions/amp-date-display/1.0"},"homepage":"https://github.com/ampproject/amphtml/tree/main/extensions/amp-date-display/1.0","peerDependencies":{"preact":"^10.2.1","react":"^17.0.0"},"dependencies":{"@bentoproject/core":"0.2205251942.0"},"readme":"# Bento Date Display\n\nDisplays time data that you can render in your page. By providing specific [attributes](#attributes) in the Bento Date Display tag, the Bento Date Display extension returns a list of time parameters, which you can pass to [an amp-mustache template](../../amp-mustache/amp-mustache.md) for rendering. Refer to the [list below for each returned time parameter](#returned-time-parameters).\n\n## Web Component\n\nYou must include each Bento component's required CSS library to guarantee proper loading and before adding custom styles. Or use the light-weight pre-upgrade styles available inline. See [Layout and style](#layout-and-style).\n\n### Example: Import via npm\n\nInstall via npm:\n\n```sh\nnpm install @bentoproject/bento-date-display\n```\n\n```javascript\nimport {defineElement as defineBentoDateDisplay} from '@bentoproject/bento-date-display';\ndefineBentoDateDisplay();\n```\n\n### Include via `<script>`\n\n```html\n<script type=\"module\" src=\"https://cdn.ampproject.org/bento.mjs\" crossorigin=\"anonymous\"></script>\n<script nomodule src=\"https://cdn.ampproject.org/bento.js\" crossorigin=\"anonymous\"></script>\n<!-- Include bento-mustache.js to use mustache templates with this component -->\n<script async src=\"https://cdn.ampproject.org/v0/bento-mustache.js\"></script>\n<script type=\"module\" src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.mjs\" crossorigin=\"anonymous\"></script>\n<script nomodule src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.js\" crossorigin=\"anonymous\"></script>\n<link rel=\"stylesheet\" href=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.css\" crossorigin=\"anonymous\">\n```\n\n### Example\n\n```html\n<!DOCTYPE html>\n<html>\n  <head>\n    <script\n      type=\"module\"\n      async\n      src=\"https://cdn.ampproject.org/bento.mjs\"\n    ></script>\n    <script nomodule src=\"https://cdn.ampproject.org/bento.js\"></script>\n    <script async src=\"https://cdn.ampproject.org/v0/bento-mustache.js\"></script>\n    <script\n      type=\"module\"\n      async\n      src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.mjs\"\n    ></script>\n    <script\n      nomodule\n      async\n      src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.js\"\n    ></script>\n    <link\n      rel=\"stylesheet\"\n      type=\"text/css\"\n      href=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.css\"\n    />\n  </head>\n  <body>\n    <bento-date-display\n      datetime=\"2021-09-09T16:02:08.494Z\"\n      displayIn=\"utc\"\n      locale=\"en-GB\"\n    >\n      <template>\n        <div>ISO: {{iso}}; locale: {{localeString}}</div>\n      </template>\n    </bento-date-display>\n  </body>\n</html>\n```\n\n### Interactivity and API usage\n\nThe Bento Date Display component does not have an imperative API. However, the Bento Date Display Web Component will render a mustache-template, provided by the consumer in a `<template>` tag with `type=\"amp-mustache\"`. This template may interpolate date-related parameters. See the [Returned Time Parameters section](#returned-time-parameters) for a full list of all the available parameters.\n\n### Layout and style\n\nEach Bento component has a small CSS library you must include to guarantee proper loading without [content shifts](https://web.dev/cls/). Because of order-based specificity, you must manually ensure that stylesheets are included before any custom styles.\n\n```html\n<link rel=\"stylesheet\" type=\"text/css\" href=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.css\">\n```\n\nAlternatively, you may also make the light-weight pre-upgrade styles available inline:\n\n```html\n<style data-bento-boilerplate>\n  bento-date-display {\n    display: block;\n    overflow: hidden;\n    position: relative;\n  }\n</style>\n```\n\n### Attributes\n\n#### `datetime`\n\nThe `datetime` attribute specifies the date and time in a standard ISO 8601 date\nstring (e.g. 2017-08-02T15:05:05.000Z) or the string `now`. If set to `now`,\n`bento-date-display` will use the time the page loaded to render its template.\n\n#### `timestamp-ms`\n\nThe `timestamp-ms` attribute specifies the date and time using the number of\nmilliseconds since 1970-01-01T0:00:00.000Z\n\n#### `timestamp-seconds`\n\nThe `timestamp-seconds` attribute specifies the date and time using the number\nof seconds since 1970-01-01T0:00:00.000Z\n\n#### `locale` (optional)\n\nAn internationalization language string for each timer unit. The default value\nis `en` (for English). This attribute supports all values that are supported by\nthe user's browser.\n\n#### `display-in` (optional)\n\nIf set to the value `utc`, the `display-in` attribute will convert the given\ndate to UTC.\n\n#### `offset-seconds` (optional)\n\nThe `offset-seconds` attribute specifies an integer number of seconds to shift\nthe given date.\n\n#### `data-options-\\*` (optional)\n\nThe `data-options-*` supports all the options under [Intl.DateTimeFormat.options](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/DateTimeFormat#parameters)\nparameter that specifies the formatting style to use for `localeString` format.\nValid attributes include: `data-options-date-style`, `data-options-time-style`, etc.\n\nNote that if `display-in` attrubute is set to `utc`, the value of\n`data-options-time-zone` will automatically be converted to `UTC`.\n\n### Styling\n\nYou may use the `bento-date-display` element selector to style the Bento Date Display component freely.\n\n---\n\n## Preact/React Component\n\n### Import via npm\n\n```sh\nnpm install @bentoproject/date-display\n```\n\n```javascript\nimport React from 'react';\nimport {BentoDateDisplay} from '@bentoproject/date-display/react';\nimport '@bentoproject/date-display/styles.css';\n\nfunction App() {\n  return (\n    <BentoDateDisplay\n      datetime={dateTime}\n      displayIn={displayIn}\n      locale={locale}\n      render={(date) => (\n        <div>{`ISO: ${date.iso}; locale: ${date.localeString}`}</div>\n      )}\n    />\n  );\n}\n```\n\n### Interactivity and API usage\n\nThe Bento Date Display component does not have an imperative API. However, the Bento Date Display Preact/React component does accept a `render` prop that renders the consumer's template. This `render` prop should be a function which the Bento Date Display Preact/React component can use to render its template. The `render` callback will be provided a variety of date-related parameters for consumers to interpolate in the rendered template. See the [`render` prop section](#render) for more information.\n\n### Layout and style\n\nThe Bento Date Display Preact/React component allows consumers to render their own templates. These templates may use inline styles, `<style>` tags, Preact/React components that import their own stylesheets.\n\n### Props\n\n#### `datetime`\n\nRequired prop. Denotes the date and time as a Date, String, or Number. If String, must be a standard ISO 8601 date string (e.g. 2017-08-02T15:05:05.000Z) or the string `now`. If set to `now`, it will use the time the page loaded to render its template. If Number, must be a POSIX epoch value in milliseconds.\n\n#### `displayIn`\n\nOptional prop that can be either `\"utc\"` or `\"local\"` and defaults to `\"local\"`. This prop indicates what timezone to display the date in. If set to the value `\"utc\"`, the component will convert the given date to UTC.\n\n#### `locale`\n\nAn internationalization language string for each timer unit. The default value is `en` (for English). This prop supports all values that are supported by the user's browser.\n\n#### `localeOptions`\n\nThe `localeOptions` object supports all the options under [Intl.DateTimeFormat.options](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/DateTimeFormat#parameters) parameter that specifies the formatting style to use for `localeString` format.\n\nNote that if the `displayIn` prop is set to `utc`, the value of `localeOptions.timeZone` will automatically be converted to `UTC`.\n\n#### `render`\n\nOptional callback that should render a template. The callback will be provided an object with properties/values related to the date expressed in `datetime`.\n\nBy default, the Bento Date Display component will display the [`localeString` form of the Date](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/toLocaleString) for the given locale and localeOption. See the [Returned Time Parameters section](#returned-time-parameters) for more details on how each property will be displayed.\n\n```typescript\n(dateParams: DateParams) => JSXInternal.Element\ninterface DateParams {\n  day: number;\n  dayName: string;\n  dayNameShort: string;\n  dayPeriod: string;\n  dayTwoDigit: string;\n  hour: number;\n  hour12: number;\n  hour12TwoDigit: string;\n  hourTwoDigit: string;\n  iso: string;\n  localeString: string;\n  minute: number;\n  minuteTwoDigit: string;\n  month: number;\n  monthName: string;\n  monthNameShort: string;\n  monthTwoDigit: string;\n  second: number;\n  secondTwoDigit: string;\n  timeZoneName: string;\n  timeZoneNameShort: string;\n  year: number;\n  yearTwoDi: string;\n}\n```\n\n### Returned Time Parameters\n\nThis table lists the format you can specify in your Mustache template:\n\n| Format            | Meaning                                                       |\n| ----------------- | ------------------------------------------------------------- |\n| day               | 1, 2, ...12, 13, etc.                                         |\n| dayName           | string,                                                       |\n| dayNameShort      | string,                                                       |\n| dayPeriod         | string,                                                       |\n| dayTwoDigit       | 01, 02, 03, ..., 12, 13, etc.                                 |\n| hour              | 0, 1, 2, 3, ..., 12, 13, ..., 22, 23                          |\n| hour12            | 1, 2, 3, ..., 12, 1, 2, ..., 11, 12                           |\n| hour12TwoDigit    | 01, 02, ..., 12, 01, 02, ..., 11, 12                          |\n| hourTwoDigit      | 00, 01, 02, ..., 12, 13, ..., 22, 23                          |\n| iso               | A standard ISO8601 date string e.g. 2019-01-23T15:31:21.213Z, |\n| localeString      | A string with a language sensitive representation.            |\n| minute            | 0, 1, 2, ..., 58, 59                                          |\n| minuteTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| month             | 1, 2, 3, ..., 12                                              |\n| monthName         | Internationalized month name string.                          |\n| monthNameShort    | Internationalized abbreviated month name string.,             |\n| monthTwoDigit     | 01, 02, ..., 11, 12                                           |\n| second            | 0, 1, 2, ..., 58, 59                                          |\n| secondTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| timeZoneName      | Internationalized timezone, like `Pacific Daylight Time`      |\n| timeZoneNameShort | Internationalized timezone, abbreviated, like `PST`           |\n| year              | 0, 1, 2, ..., 1999, 2000, 2001, etc.                          |\n| yearTwoDigit      | 00, 01, 02, ..., 17, 18, 19, ..., 98, 99                      |\n","readmeFilename":"README.md","gitHead":"e2f9546e2689785f0d9b4ba72e61759323c45bef","bugs":{"url":"https://github.com/ampproject/amphtml/issues"},"_id":"@bentoproject/date-display@1.2205251942.0","_nodeVersion":"16.15.0","_npmVersion":"8.5.5","dist":{"integrity":"sha512-lXqITVtUQ0bZcjETcWfxQEznru8xXjfBnLXTWylYuq2TbT1iIQ0+K3KOuCxxF0XK9YcMMfuc55WQ1IaSII8g3Q==","shasum":"925f764321f542401cad2532f7157fdff13246a9","tarball":"https://registry.npmjs.org/@bentoproject/date-display/-/date-display-1.2205251942.0.tgz","fileCount":29,"unpackedSize":677013,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDSU88oxLyrdDWatmGWqzUmdsRTivGAszbx8pC+dNN51QIgNL8kFkn09GS9bc90WMyw9hrunnTL1QoH9BNbjyoDMOU="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJijzmYACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrISA//ZK4uUjoWt2zsj3tfdEBFoKJRdBfpD8QXyue8J5x9QYZsuMQ+\r\naYjT0XTGaaQf0EY2Z66WzC3JdyUf6qr9aKCB2quzCYPdHQRsP55twAQL+s6p\r\ny77mKmTA87qyCWUX1QgUfb6XWGr2FmUdrHCPd3h3dGMrEgNK+KoVHTWQfOS9\r\nneuJDqW3QyXt967xd4L7GQkP0NsJRMY5kbWD+PGEZvfD9KGpTWDoDfphIQu5\r\npYf8aOOCv5o36fKyMjWp/CVRvAUYJGuLeNZdF7as9N39uGDFsAXslgCY9BGh\r\npOibbBW+n7nML9aTDbWBpNuRajl+bk5bNSFQ8VkY4epgWpMIRPFxqJ+9Py/B\r\nIGJVomCdmNLqlcZvOfTb81bROk/4A+pQy6xnMublSRoi0UDamBGlP/+bUttg\r\nyVWPTuKTzxIazPEulxFNjQRKzW27K/Dj+tUu2JLibvILzaIT6uRIogjubh/X\r\ngNLYFceiMEAe8/xkr8Dj1H5b8HVjoTzbdJK2MZGiYcWIe63XLm6jC+ASSTZM\r\nUYXwulcdCh4rHgDixwuoTinMs8+tIVEEPSW8eKLv04boZ1+iI4BbwHDn5tqi\r\nzJKdCXKpRDr52jqLQkhkjDC9YeSiLUT+rJrjK4E95VDoj0Yhdbp5TMK6P0Mq\r\n4+L/wQv+QVia0QgfK92OpCVe6j9+w9F+Q58=\r\n=vVy/\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"bentoprojectbot","email":"bentobot@amp.dev"},"directories":{},"maintainers":[{"name":"bentoprojectbot","email":"bentobot@amp.dev"},{"name":"kristoferbaxter","email":"kbax@me.com"},{"name":"esth","email":"esther@amp.dev"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/date-display_1.2205251942.0_1653553560085_0.7397755129765042"},"_hasShrinkwrap":false},"1.2205270638.0":{"name":"@bentoproject/date-display","version":"1.2205270638.0","description":"Displays time data that you can render in your page.","author":{"name":"Bento Authors"},"license":"Apache-2.0","main":"./dist/web-component.js","module":"./dist/web-component.module.js","exports":{".":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./web-component":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./preact":{"import":"./dist/component-preact.module.js","require":"./dist/component-preact.js"},"./react":{"import":"./dist/component-react.module.js","require":"./dist/component-react.js"},"./web-component.css":"./dist/web-component.css"},"repository":{"type":"git","url":"git+https://github.com/ampproject/amphtml.git","directory":"extensions/amp-date-display/1.0"},"homepage":"https://github.com/ampproject/amphtml/tree/main/extensions/amp-date-display/1.0","peerDependencies":{"preact":"^10.2.1","react":"^17.0.0"},"dependencies":{"@bentoproject/core":"0.2205270638.0"},"gitHead":"11e6020f1ca745e65b5d80408e0beca2a8d38004","bugs":{"url":"https://github.com/ampproject/amphtml/issues"},"_id":"@bentoproject/date-display@1.2205270638.0","_nodeVersion":"16.15.0","_npmVersion":"8.5.5","dist":{"integrity":"sha512-nXwxZaITtgleG6qvNGgaUDnXhNAjYVYsYSEIzV/sD7/MBEnfMvDU4ooDqmr+5NtMMHNZMzL3aYFbU4noVtTP+w==","shasum":"5a2931ef2d85884a774acf9b74f5b19bb86cbf5a","tarball":"https://registry.npmjs.org/@bentoproject/date-display/-/date-display-1.2205270638.0.tgz","fileCount":29,"unpackedSize":677013,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDhpCSs/uiwLTpeILryXQSIbxUpi98d7i/e7aoTEVG3rAIhAOerWYvaxROz/OpEwrkUxNlgRufJNo1o7yw8wuPF3gMy"}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJikIsdACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqLgw/8D1AkX13xRK6Tp58snPXNk+Y2qmzppo8hm5IC2SnEDJvc0EQ2\r\nkEw5q0eD97LJiH9AvOjedXTflle1wdAXMeI8AaXFDJyEopfDrP32KbczwQnI\r\nbiOKvoY1ZBX5YObsw4eDhCviVT0euaxtp0e8kwyMWyMSmNcua59Weg6meLr5\r\nsrvAvXGwq2Vp2GPDq5g0vkS4+tbrsRLLDnPI9DWpv1QQ7noftHgwja2Fyo6s\r\nbzgYMSIp052Jhb61XsClnudV0gp9euzco+JhiUwfYXFQi6ZfI3Yd3AgILKId\r\niiQKaLXLUo3CX5RXc+R6q+UMvw0gUGVS3tqfwMNMvCJqQEtXS3nGI+S89GK1\r\nyYlwcDfiFQCTF+8KtSQp2YZXpyOZtUviI8SoDtU9bno8J6XbhT6ltgsa820w\r\nFQ/snC0wubd7zDaA0UEM0UF/uma/fSeggUonagudADS9ibzS05xlwaBvjFZf\r\n/mMEOXvXkzMdx+0Gui7Woi4j5dK1LMHaibrt2JomSq0RowOolggsmxSx1I61\r\nMoMVYfa0V/goWwFTg9STL2WlN3Y6S/AKd4B1xF9DkCvmeN0wAu3yRf+O34S7\r\nKtm9OFuexpPhRX9BJ8L+9G3k/E8mV9+OBz5/pRnlxrnlY8bHH5iqKvLqxoeW\r\njBWEHJXUhQyhdY49+55KiQ+M2WkntFjtUvk=\r\n=5TZu\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"bentoprojectbot","email":"bentobot@amp.dev"},"directories":{},"maintainers":[{"name":"bentoprojectbot","email":"bentobot@amp.dev"},{"name":"kristoferbaxter","email":"kbax@me.com"},{"name":"esth","email":"esther@amp.dev"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/date-display_1.2205270638.0_1653639964773_0.8113463228238496"},"_hasShrinkwrap":false},"1.2206071918.0":{"name":"@bentoproject/date-display","version":"1.2206071918.0","description":"Displays time data that you can render in your page.","author":{"name":"Bento Authors"},"license":"Apache-2.0","main":"./dist/web-component.js","module":"./dist/web-component.module.js","exports":{".":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./web-component":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./preact":{"import":"./dist/component-preact.module.js","require":"./dist/component-preact.js"},"./react":{"import":"./dist/component-react.module.js","require":"./dist/component-react.js"},"./web-component.css":"./dist/web-component.css"},"repository":{"type":"git","url":"git+https://github.com/ampproject/amphtml.git","directory":"extensions/amp-date-display/1.0"},"homepage":"https://github.com/ampproject/amphtml/tree/main/extensions/amp-date-display/1.0","peerDependencies":{"preact":"^10.2.1","react":"^17.0.0"},"dependencies":{"@bentoproject/core":"0.2206071918.0"},"readme":"# Bento Date Display\n\nDisplays time data that you can render in your page. By providing specific [attributes](#attributes) in the Bento Date Display tag, the Bento Date Display extension returns a list of time parameters, which you can pass to [an amp-mustache template](../../amp-mustache/amp-mustache.md) for rendering. Refer to the [list below for each returned time parameter](#returned-time-parameters).\n\n## Web Component\n\nYou must include each Bento component's required CSS library to guarantee proper loading and before adding custom styles. Or use the light-weight pre-upgrade styles available inline. See [Layout and style](#layout-and-style).\n\n### Example: Import via npm\n\nInstall via npm:\n\n```sh\nnpm install @bentoproject/bento-date-display\n```\n\n```javascript\nimport {defineElement as defineBentoDateDisplay} from '@bentoproject/bento-date-display';\ndefineBentoDateDisplay();\n```\n\n### Include via `<script>`\n\n```html\n<script type=\"module\" src=\"https://cdn.ampproject.org/bento.mjs\" crossorigin=\"anonymous\"></script>\n<script nomodule src=\"https://cdn.ampproject.org/bento.js\" crossorigin=\"anonymous\"></script>\n<!-- Include bento-mustache.js to use mustache templates with this component -->\n<script async src=\"https://cdn.ampproject.org/v0/bento-mustache.js\"></script>\n<script type=\"module\" src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.mjs\" crossorigin=\"anonymous\"></script>\n<script nomodule src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.js\" crossorigin=\"anonymous\"></script>\n<link rel=\"stylesheet\" href=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.css\" crossorigin=\"anonymous\">\n```\n\n### Example\n\n```html\n<!DOCTYPE html>\n<html>\n  <head>\n    <script\n      type=\"module\"\n      async\n      src=\"https://cdn.ampproject.org/bento.mjs\"\n    ></script>\n    <script nomodule src=\"https://cdn.ampproject.org/bento.js\"></script>\n    <script async src=\"https://cdn.ampproject.org/v0/bento-mustache.js\"></script>\n    <script\n      type=\"module\"\n      async\n      src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.mjs\"\n    ></script>\n    <script\n      nomodule\n      async\n      src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.js\"\n    ></script>\n    <link\n      rel=\"stylesheet\"\n      type=\"text/css\"\n      href=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.css\"\n    />\n  </head>\n  <body>\n    <bento-date-display\n      datetime=\"2021-09-09T16:02:08.494Z\"\n      displayIn=\"utc\"\n      locale=\"en-GB\"\n    >\n      <template>\n        <div>ISO: {{iso}}; locale: {{localeString}}</div>\n      </template>\n    </bento-date-display>\n  </body>\n</html>\n```\n\n### Interactivity and API usage\n\nThe Bento Date Display component does not have an imperative API. However, the Bento Date Display Web Component will render a mustache-template, provided by the consumer in a `<template>` tag with `type=\"amp-mustache\"`. This template may interpolate date-related parameters. See the [Returned Time Parameters section](#returned-time-parameters) for a full list of all the available parameters.\n\n### Layout and style\n\nEach Bento component has a small CSS library you must include to guarantee proper loading without [content shifts](https://web.dev/cls/). Because of order-based specificity, you must manually ensure that stylesheets are included before any custom styles.\n\n```html\n<link rel=\"stylesheet\" type=\"text/css\" href=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.css\">\n```\n\nAlternatively, you may also make the light-weight pre-upgrade styles available inline:\n\n```html\n<style data-bento-boilerplate>\n  bento-date-display {\n    display: block;\n    overflow: hidden;\n    position: relative;\n  }\n</style>\n```\n\n### Attributes\n\n#### `datetime`\n\nThe `datetime` attribute specifies the date and time in a standard ISO 8601 date\nstring (e.g. 2017-08-02T15:05:05.000Z) or the string `now`. If set to `now`,\n`bento-date-display` will use the time the page loaded to render its template.\n\n#### `timestamp-ms`\n\nThe `timestamp-ms` attribute specifies the date and time using the number of\nmilliseconds since 1970-01-01T0:00:00.000Z\n\n#### `timestamp-seconds`\n\nThe `timestamp-seconds` attribute specifies the date and time using the number\nof seconds since 1970-01-01T0:00:00.000Z\n\n#### `locale` (optional)\n\nAn internationalization language string for each timer unit. The default value\nis `en` (for English). This attribute supports all values that are supported by\nthe user's browser.\n\n#### `display-in` (optional)\n\nIf set to the value `utc`, the `display-in` attribute will convert the given\ndate to UTC.\n\n#### `offset-seconds` (optional)\n\nThe `offset-seconds` attribute specifies an integer number of seconds to shift\nthe given date.\n\n#### `data-options-\\*` (optional)\n\nThe `data-options-*` supports all the options under [Intl.DateTimeFormat.options](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/DateTimeFormat#parameters)\nparameter that specifies the formatting style to use for `localeString` format.\nValid attributes include: `data-options-date-style`, `data-options-time-style`, etc.\n\nNote that if `display-in` attrubute is set to `utc`, the value of\n`data-options-time-zone` will automatically be converted to `UTC`.\n\n### Styling\n\nYou may use the `bento-date-display` element selector to style the Bento Date Display component freely.\n\n---\n\n## Preact/React Component\n\n### Import via npm\n\n```sh\nnpm install @bentoproject/date-display\n```\n\n```javascript\nimport React from 'react';\nimport {BentoDateDisplay} from '@bentoproject/date-display/react';\nimport '@bentoproject/date-display/styles.css';\n\nfunction App() {\n  return (\n    <BentoDateDisplay\n      datetime={dateTime}\n      displayIn={displayIn}\n      locale={locale}\n      render={(date) => (\n        <div>{`ISO: ${date.iso}; locale: ${date.localeString}`}</div>\n      )}\n    />\n  );\n}\n```\n\n### Interactivity and API usage\n\nThe Bento Date Display component does not have an imperative API. However, the Bento Date Display Preact/React component does accept a `render` prop that renders the consumer's template. This `render` prop should be a function which the Bento Date Display Preact/React component can use to render its template. The `render` callback will be provided a variety of date-related parameters for consumers to interpolate in the rendered template. See the [`render` prop section](#render) for more information.\n\n### Layout and style\n\nThe Bento Date Display Preact/React component allows consumers to render their own templates. These templates may use inline styles, `<style>` tags, Preact/React components that import their own stylesheets.\n\n### Props\n\n#### `datetime`\n\nRequired prop. Denotes the date and time as a Date, String, or Number. If String, must be a standard ISO 8601 date string (e.g. 2017-08-02T15:05:05.000Z) or the string `now`. If set to `now`, it will use the time the page loaded to render its template. If Number, must be a POSIX epoch value in milliseconds.\n\n#### `displayIn`\n\nOptional prop that can be either `\"utc\"` or `\"local\"` and defaults to `\"local\"`. This prop indicates what timezone to display the date in. If set to the value `\"utc\"`, the component will convert the given date to UTC.\n\n#### `locale`\n\nAn internationalization language string for each timer unit. The default value is `en` (for English). This prop supports all values that are supported by the user's browser.\n\n#### `localeOptions`\n\nThe `localeOptions` object supports all the options under [Intl.DateTimeFormat.options](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/DateTimeFormat#parameters) parameter that specifies the formatting style to use for `localeString` format.\n\nNote that if the `displayIn` prop is set to `utc`, the value of `localeOptions.timeZone` will automatically be converted to `UTC`.\n\n#### `render`\n\nOptional callback that should render a template. The callback will be provided an object with properties/values related to the date expressed in `datetime`.\n\nBy default, the Bento Date Display component will display the [`localeString` form of the Date](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/toLocaleString) for the given locale and localeOption. See the [Returned Time Parameters section](#returned-time-parameters) for more details on how each property will be displayed.\n\n```typescript\n(dateParams: DateParams) => JSXInternal.Element\ninterface DateParams {\n  day: number;\n  dayName: string;\n  dayNameShort: string;\n  dayPeriod: string;\n  dayTwoDigit: string;\n  hour: number;\n  hour12: number;\n  hour12TwoDigit: string;\n  hourTwoDigit: string;\n  iso: string;\n  localeString: string;\n  minute: number;\n  minuteTwoDigit: string;\n  month: number;\n  monthName: string;\n  monthNameShort: string;\n  monthTwoDigit: string;\n  second: number;\n  secondTwoDigit: string;\n  timeZoneName: string;\n  timeZoneNameShort: string;\n  year: number;\n  yearTwoDi: string;\n}\n```\n\n### Returned Time Parameters\n\nThis table lists the format you can specify in your Mustache template:\n\n| Format            | Meaning                                                       |\n| ----------------- | ------------------------------------------------------------- |\n| day               | 1, 2, ...12, 13, etc.                                         |\n| dayName           | string,                                                       |\n| dayNameShort      | string,                                                       |\n| dayPeriod         | string,                                                       |\n| dayTwoDigit       | 01, 02, 03, ..., 12, 13, etc.                                 |\n| hour              | 0, 1, 2, 3, ..., 12, 13, ..., 22, 23                          |\n| hour12            | 1, 2, 3, ..., 12, 1, 2, ..., 11, 12                           |\n| hour12TwoDigit    | 01, 02, ..., 12, 01, 02, ..., 11, 12                          |\n| hourTwoDigit      | 00, 01, 02, ..., 12, 13, ..., 22, 23                          |\n| iso               | A standard ISO8601 date string e.g. 2019-01-23T15:31:21.213Z, |\n| localeString      | A string with a language sensitive representation.            |\n| minute            | 0, 1, 2, ..., 58, 59                                          |\n| minuteTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| month             | 1, 2, 3, ..., 12                                              |\n| monthName         | Internationalized month name string.                          |\n| monthNameShort    | Internationalized abbreviated month name string.,             |\n| monthTwoDigit     | 01, 02, ..., 11, 12                                           |\n| second            | 0, 1, 2, ..., 58, 59                                          |\n| secondTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| timeZoneName      | Internationalized timezone, like `Pacific Daylight Time`      |\n| timeZoneNameShort | Internationalized timezone, abbreviated, like `PST`           |\n| year              | 0, 1, 2, ..., 1999, 2000, 2001, etc.                          |\n| yearTwoDigit      | 00, 01, 02, ..., 17, 18, 19, ..., 98, 99                      |\n","readmeFilename":"README.md","gitHead":"f200c815cb7bd0e1495bd9c338425aed1887a459","bugs":{"url":"https://github.com/ampproject/amphtml/issues"},"_id":"@bentoproject/date-display@1.2206071918.0","_nodeVersion":"16.15.0","_npmVersion":"8.5.5","dist":{"integrity":"sha512-/ziKVB4O/Co5nOsNrdPpgbhhd/z3M+nE5HgYyKabXhDYxDdL7WSQ4/r67k67ihYq2wVlgwZJL/Pxlakcl43knA==","shasum":"1a25d8b3b1a20b5875f2dc1dca193ef44d6b8854","tarball":"https://registry.npmjs.org/@bentoproject/date-display/-/date-display-1.2206071918.0.tgz","fileCount":29,"unpackedSize":677013,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDkTDib6B/v98FRPmdITEUmG4+e23LEttXBRqCb53LdWAIgN/Cu5+XrjdS4mBlljQGUKl8HKmfxz5vRNfEFx1asu3s="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJin9CiACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqMOg/8DJ//Bu/HQeqBInEhQZboq2EjEYyQAW4QSpb80xgMkOUMKdK/\r\nowmOsEvMysTkTxmy5H9+yh2dabFZUYFq12yxS/Vtme+vZhZKYvMljSKQpB6w\r\n+c3PvQof+bH9gkZSED6a9BTfp88P6EC54BRy+sgTu+AMvYK+fYMYHcXPm9Lo\r\nzMb+yzxegbYGwqKiihPdTgTctIDB+rdIa7dLtft3FRDqoLPSJ5AcbCWYNTI9\r\nVks1OTwzFo7WHwv45GZKPLE36XxSeZ9e+X3gLddp1Li5T09e/NBSRqYi9gXU\r\nu/R5O+IU3V/h8DRX2F26nXg000kKaR8TGzJPNdQc1wq5ID+CZTstoWuKaLzN\r\np3qhB/8KXE35MTvkqqRnf7M5egNm9Y4Em/uNqjLHs9TmQz8ggcY6XW7DBhuV\r\ndTiB4UlLVMIYXrtWRKTcOx82/hF/xtQ7I0rfyJxFV8ILJ1uLINPGwqLwyCo3\r\nhV86YZMg7OXYhNhcNQ3aPFHYsNmeJDJsBnwnDqFcSBZXCBMJnVUc4lYVGl/I\r\nL3+v+b/9ataG4GExKE/uODIQgmEVfFt/Wt/vAbc79fxo0q+w86fD0tguRkOb\r\nmhUUUjI1mfLUOXUprKj4YuT4qB2ybbuk55p+byKOWfPWJ98H6JXeBiwz+xYO\r\nPrYOCN/Fm0t7TH/8LzZL7f+s4z6XOoUwxPc=\r\n=wlez\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"bentoprojectbot","email":"bentobot@amp.dev"},"directories":{},"maintainers":[{"name":"bentoprojectbot","email":"bentobot@amp.dev"},{"name":"kristoferbaxter","email":"kbax@me.com"},{"name":"esth","email":"esther@amp.dev"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/date-display_1.2206071918.0_1654640802336_0.5605537441513524"},"_hasShrinkwrap":false},"1.2206072228.0":{"name":"@bentoproject/date-display","version":"1.2206072228.0","description":"Displays time data that you can render in your page.","author":{"name":"Bento Authors"},"license":"Apache-2.0","main":"./dist/web-component.js","module":"./dist/web-component.module.js","exports":{".":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./web-component":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./preact":{"import":"./dist/component-preact.module.js","require":"./dist/component-preact.js"},"./react":{"import":"./dist/component-react.module.js","require":"./dist/component-react.js"},"./web-component.css":"./dist/web-component.css"},"repository":{"type":"git","url":"git+https://github.com/ampproject/amphtml.git","directory":"extensions/amp-date-display/1.0"},"homepage":"https://github.com/ampproject/amphtml/tree/main/extensions/amp-date-display/1.0","peerDependencies":{"preact":"^10.2.1","react":"^17.0.0"},"dependencies":{"@bentoproject/core":"0.2206072228.0"},"readme":"# Bento Date Display\n\nDisplays time data that you can render in your page. By providing specific [attributes](#attributes) in the Bento Date Display tag, the Bento Date Display extension returns a list of time parameters, which you can pass to [an amp-mustache template](../../amp-mustache/amp-mustache.md) for rendering. Refer to the [list below for each returned time parameter](#returned-time-parameters).\n\n## Web Component\n\nYou must include each Bento component's required CSS library to guarantee proper loading and before adding custom styles. Or use the light-weight pre-upgrade styles available inline. See [Layout and style](#layout-and-style).\n\n### Example: Import via npm\n\nInstall via npm:\n\n```sh\nnpm install @bentoproject/bento-date-display\n```\n\n```javascript\nimport {defineElement as defineBentoDateDisplay} from '@bentoproject/bento-date-display';\ndefineBentoDateDisplay();\n```\n\n### Include via `<script>`\n\n```html\n<script type=\"module\" src=\"https://cdn.ampproject.org/bento.mjs\" crossorigin=\"anonymous\"></script>\n<script nomodule src=\"https://cdn.ampproject.org/bento.js\" crossorigin=\"anonymous\"></script>\n<!-- Include bento-mustache.js to use mustache templates with this component -->\n<script async src=\"https://cdn.ampproject.org/v0/bento-mustache.js\"></script>\n<script type=\"module\" src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.mjs\" crossorigin=\"anonymous\"></script>\n<script nomodule src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.js\" crossorigin=\"anonymous\"></script>\n<link rel=\"stylesheet\" href=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.css\" crossorigin=\"anonymous\">\n```\n\n### Example\n\n```html\n<!DOCTYPE html>\n<html>\n  <head>\n    <script\n      type=\"module\"\n      async\n      src=\"https://cdn.ampproject.org/bento.mjs\"\n    ></script>\n    <script nomodule src=\"https://cdn.ampproject.org/bento.js\"></script>\n    <script async src=\"https://cdn.ampproject.org/v0/bento-mustache.js\"></script>\n    <script\n      type=\"module\"\n      async\n      src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.mjs\"\n    ></script>\n    <script\n      nomodule\n      async\n      src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.js\"\n    ></script>\n    <link\n      rel=\"stylesheet\"\n      type=\"text/css\"\n      href=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.css\"\n    />\n  </head>\n  <body>\n    <bento-date-display\n      datetime=\"2021-09-09T16:02:08.494Z\"\n      displayIn=\"utc\"\n      locale=\"en-GB\"\n    >\n      <template>\n        <div>ISO: {{iso}}; locale: {{localeString}}</div>\n      </template>\n    </bento-date-display>\n  </body>\n</html>\n```\n\n### Interactivity and API usage\n\nThe Bento Date Display component does not have an imperative API. However, the Bento Date Display Web Component will render a mustache-template, provided by the consumer in a `<template>` tag with `type=\"amp-mustache\"`. This template may interpolate date-related parameters. See the [Returned Time Parameters section](#returned-time-parameters) for a full list of all the available parameters.\n\n### Layout and style\n\nEach Bento component has a small CSS library you must include to guarantee proper loading without [content shifts](https://web.dev/cls/). Because of order-based specificity, you must manually ensure that stylesheets are included before any custom styles.\n\n```html\n<link rel=\"stylesheet\" type=\"text/css\" href=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.css\">\n```\n\nAlternatively, you may also make the light-weight pre-upgrade styles available inline:\n\n```html\n<style data-bento-boilerplate>\n  bento-date-display {\n    display: block;\n    overflow: hidden;\n    position: relative;\n  }\n</style>\n```\n\n### Attributes\n\n#### `datetime`\n\nThe `datetime` attribute specifies the date and time in a standard ISO 8601 date\nstring (e.g. 2017-08-02T15:05:05.000Z) or the string `now`. If set to `now`,\n`bento-date-display` will use the time the page loaded to render its template.\n\n#### `timestamp-ms`\n\nThe `timestamp-ms` attribute specifies the date and time using the number of\nmilliseconds since 1970-01-01T0:00:00.000Z\n\n#### `timestamp-seconds`\n\nThe `timestamp-seconds` attribute specifies the date and time using the number\nof seconds since 1970-01-01T0:00:00.000Z\n\n#### `locale` (optional)\n\nAn internationalization language string for each timer unit. The default value\nis `en` (for English). This attribute supports all values that are supported by\nthe user's browser.\n\n#### `display-in` (optional)\n\nIf set to the value `utc`, the `display-in` attribute will convert the given\ndate to UTC.\n\n#### `offset-seconds` (optional)\n\nThe `offset-seconds` attribute specifies an integer number of seconds to shift\nthe given date.\n\n#### `data-options-\\*` (optional)\n\nThe `data-options-*` supports all the options under [Intl.DateTimeFormat.options](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/DateTimeFormat#parameters)\nparameter that specifies the formatting style to use for `localeString` format.\nValid attributes include: `data-options-date-style`, `data-options-time-style`, etc.\n\nNote that if `display-in` attrubute is set to `utc`, the value of\n`data-options-time-zone` will automatically be converted to `UTC`.\n\n### Styling\n\nYou may use the `bento-date-display` element selector to style the Bento Date Display component freely.\n\n---\n\n## Preact/React Component\n\n### Import via npm\n\n```sh\nnpm install @bentoproject/date-display\n```\n\n```javascript\nimport React from 'react';\nimport {BentoDateDisplay} from '@bentoproject/date-display/react';\nimport '@bentoproject/date-display/styles.css';\n\nfunction App() {\n  return (\n    <BentoDateDisplay\n      datetime={dateTime}\n      displayIn={displayIn}\n      locale={locale}\n      render={(date) => (\n        <div>{`ISO: ${date.iso}; locale: ${date.localeString}`}</div>\n      )}\n    />\n  );\n}\n```\n\n### Interactivity and API usage\n\nThe Bento Date Display component does not have an imperative API. However, the Bento Date Display Preact/React component does accept a `render` prop that renders the consumer's template. This `render` prop should be a function which the Bento Date Display Preact/React component can use to render its template. The `render` callback will be provided a variety of date-related parameters for consumers to interpolate in the rendered template. See the [`render` prop section](#render) for more information.\n\n### Layout and style\n\nThe Bento Date Display Preact/React component allows consumers to render their own templates. These templates may use inline styles, `<style>` tags, Preact/React components that import their own stylesheets.\n\n### Props\n\n#### `datetime`\n\nRequired prop. Denotes the date and time as a Date, String, or Number. If String, must be a standard ISO 8601 date string (e.g. 2017-08-02T15:05:05.000Z) or the string `now`. If set to `now`, it will use the time the page loaded to render its template. If Number, must be a POSIX epoch value in milliseconds.\n\n#### `displayIn`\n\nOptional prop that can be either `\"utc\"` or `\"local\"` and defaults to `\"local\"`. This prop indicates what timezone to display the date in. If set to the value `\"utc\"`, the component will convert the given date to UTC.\n\n#### `locale`\n\nAn internationalization language string for each timer unit. The default value is `en` (for English). This prop supports all values that are supported by the user's browser.\n\n#### `localeOptions`\n\nThe `localeOptions` object supports all the options under [Intl.DateTimeFormat.options](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/DateTimeFormat#parameters) parameter that specifies the formatting style to use for `localeString` format.\n\nNote that if the `displayIn` prop is set to `utc`, the value of `localeOptions.timeZone` will automatically be converted to `UTC`.\n\n#### `render`\n\nOptional callback that should render a template. The callback will be provided an object with properties/values related to the date expressed in `datetime`.\n\nBy default, the Bento Date Display component will display the [`localeString` form of the Date](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/toLocaleString) for the given locale and localeOption. See the [Returned Time Parameters section](#returned-time-parameters) for more details on how each property will be displayed.\n\n```typescript\n(dateParams: DateParams) => JSXInternal.Element\ninterface DateParams {\n  day: number;\n  dayName: string;\n  dayNameShort: string;\n  dayPeriod: string;\n  dayTwoDigit: string;\n  hour: number;\n  hour12: number;\n  hour12TwoDigit: string;\n  hourTwoDigit: string;\n  iso: string;\n  localeString: string;\n  minute: number;\n  minuteTwoDigit: string;\n  month: number;\n  monthName: string;\n  monthNameShort: string;\n  monthTwoDigit: string;\n  second: number;\n  secondTwoDigit: string;\n  timeZoneName: string;\n  timeZoneNameShort: string;\n  year: number;\n  yearTwoDi: string;\n}\n```\n\n### Returned Time Parameters\n\nThis table lists the format you can specify in your Mustache template:\n\n| Format            | Meaning                                                       |\n| ----------------- | ------------------------------------------------------------- |\n| day               | 1, 2, ...12, 13, etc.                                         |\n| dayName           | string,                                                       |\n| dayNameShort      | string,                                                       |\n| dayPeriod         | string,                                                       |\n| dayTwoDigit       | 01, 02, 03, ..., 12, 13, etc.                                 |\n| hour              | 0, 1, 2, 3, ..., 12, 13, ..., 22, 23                          |\n| hour12            | 1, 2, 3, ..., 12, 1, 2, ..., 11, 12                           |\n| hour12TwoDigit    | 01, 02, ..., 12, 01, 02, ..., 11, 12                          |\n| hourTwoDigit      | 00, 01, 02, ..., 12, 13, ..., 22, 23                          |\n| iso               | A standard ISO8601 date string e.g. 2019-01-23T15:31:21.213Z, |\n| localeString      | A string with a language sensitive representation.            |\n| minute            | 0, 1, 2, ..., 58, 59                                          |\n| minuteTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| month             | 1, 2, 3, ..., 12                                              |\n| monthName         | Internationalized month name string.                          |\n| monthNameShort    | Internationalized abbreviated month name string.,             |\n| monthTwoDigit     | 01, 02, ..., 11, 12                                           |\n| second            | 0, 1, 2, ..., 58, 59                                          |\n| secondTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| timeZoneName      | Internationalized timezone, like `Pacific Daylight Time`      |\n| timeZoneNameShort | Internationalized timezone, abbreviated, like `PST`           |\n| year              | 0, 1, 2, ..., 1999, 2000, 2001, etc.                          |\n| yearTwoDigit      | 00, 01, 02, ..., 17, 18, 19, ..., 98, 99                      |\n","readmeFilename":"README.md","gitHead":"9cfa89fc95b4eedfeb00b4eec539909f0b0c0f6e","bugs":{"url":"https://github.com/ampproject/amphtml/issues"},"_id":"@bentoproject/date-display@1.2206072228.0","_nodeVersion":"16.15.1","_npmVersion":"8.11.0","dist":{"integrity":"sha512-KUSHPCXb9EaYq8v/igystuv+reNI94lVKcAEytIWzRPMg9qUkxKU+mXByUdcT1x/MMWlHgFt4ogEoaTGxIRkWA==","shasum":"1ab57b3c77ea7d8a5b739ae45b3cb6021abba4cc","tarball":"https://registry.npmjs.org/@bentoproject/date-display/-/date-display-1.2206072228.0.tgz","fileCount":29,"unpackedSize":677013,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCICWMnj4Z7NIqu3RTBxWHm9R+kiHSbI+lsjuRTgqCb0v8AiApNpKlIDItreITbO1B9HIPb57GENZrTMLiG/7uKS0r4g=="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJioF0xACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmon3A/+IpTZ4wr4MaevwKQjjaoLGnQ0iS+vdS2u4rg7AIbAtUw39kwh\r\ntoBf/QHt2zjW8ddnTTMErOmhaSesihX/1RMLh3v96yurUEfZsEWuDo9BKf3r\r\nAPjrOJJGmeLNWiUwiXheL9fvdWKhEGer9pMvsYvgHBqfiP7n/vP/HStZvleU\r\nMqBZ5c7eaP1MNH/EAwPF0tpgoRr5xO0oYUip+X1pkcGl6IlhqnRaPs/0LqEY\r\n/VlwvFb08ZdxMB5oJPEUOTaXSwyugr5SYoRVx54MCu1MecI0/vguToxJ7MqK\r\nnWsM7lekoNFzv/7oCFvYqfwsCxDVTfMRSi0r6eOUW8fMWpcM51d7ocIHU7dj\r\ntLKJkLHOFDiO1RX8JQJ/lyd7kTq4Qq8kNthPUwxVJbNgebalYpVznr55aVhT\r\nQ0Mt3LrUwtqiqMgWXKM/jIF4XGVfO4K63bJO897S0e1j6v5tDJRCLcbWDKtz\r\n/POamH0aBAyf54EXzz+VF3uOdGqwES0zxSR5dte1OuxdB7e+P9WctIbS6Lj1\r\ntH8beMMMZ8ExfnxM12ijdX+QRHogADQLb7CVv44Skeo/sBZoroP/zI+V5jYh\r\neuRwEFizpZVJuGtDCyYKIkCa4E/OZyJfzNWMrEmFZciH0GyhOFGD9SnJEWsc\r\n7FvTlloXnn5CUZBmB68OMa+StduqQfxDXCs=\r\n=Um5U\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"bentoprojectbot","email":"bentobot@amp.dev"},"directories":{},"maintainers":[{"name":"bentoprojectbot","email":"bentobot@amp.dev"},{"name":"kristoferbaxter","email":"kbax@me.com"},{"name":"esth","email":"esther@amp.dev"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/date-display_1.2206072228.0_1654676784849_0.06674571667831519"},"_hasShrinkwrap":false},"1.2206082301.0":{"name":"@bentoproject/date-display","version":"1.2206082301.0","description":"Displays time data that you can render in your page.","author":{"name":"Bento Authors"},"license":"Apache-2.0","main":"./dist/web-component.js","module":"./dist/web-component.module.js","exports":{".":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./web-component":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./preact":{"import":"./dist/component-preact.module.js","require":"./dist/component-preact.js"},"./react":{"import":"./dist/component-react.module.js","require":"./dist/component-react.js"},"./web-component.css":"./dist/web-component.css"},"repository":{"type":"git","url":"git+https://github.com/ampproject/amphtml.git","directory":"extensions/amp-date-display/1.0"},"homepage":"https://github.com/ampproject/amphtml/tree/main/extensions/amp-date-display/1.0","peerDependencies":{"preact":"^10.2.1","react":"^17.0.0"},"dependencies":{"@bentoproject/core":"0.2206082301.0"},"readme":"# Bento Date Display\n\nDisplays time data that you can render in your page. By providing specific [attributes](#attributes) in the Bento Date Display tag, the Bento Date Display extension returns a list of time parameters, which you can pass to [an amp-mustache template](../../amp-mustache/amp-mustache.md) for rendering. Refer to the [list below for each returned time parameter](#returned-time-parameters).\n\n## Web Component\n\nYou must include each Bento component's required CSS library to guarantee proper loading and before adding custom styles. Or use the light-weight pre-upgrade styles available inline. See [Layout and style](#layout-and-style).\n\n### Example: Import via npm\n\nInstall via npm:\n\n```sh\nnpm install @bentoproject/bento-date-display\n```\n\n```javascript\nimport {defineElement as defineBentoDateDisplay} from '@bentoproject/bento-date-display';\ndefineBentoDateDisplay();\n```\n\n### Include via `<script>`\n\n```html\n<script type=\"module\" src=\"https://cdn.ampproject.org/bento.mjs\" crossorigin=\"anonymous\"></script>\n<script nomodule src=\"https://cdn.ampproject.org/bento.js\" crossorigin=\"anonymous\"></script>\n<!-- Include bento-mustache.js to use mustache templates with this component -->\n<script async src=\"https://cdn.ampproject.org/v0/bento-mustache.js\"></script>\n<script type=\"module\" src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.mjs\" crossorigin=\"anonymous\"></script>\n<script nomodule src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.js\" crossorigin=\"anonymous\"></script>\n<link rel=\"stylesheet\" href=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.css\" crossorigin=\"anonymous\">\n```\n\n### Example\n\n```html\n<!DOCTYPE html>\n<html>\n  <head>\n    <script\n      type=\"module\"\n      async\n      src=\"https://cdn.ampproject.org/bento.mjs\"\n    ></script>\n    <script nomodule src=\"https://cdn.ampproject.org/bento.js\"></script>\n    <script async src=\"https://cdn.ampproject.org/v0/bento-mustache.js\"></script>\n    <script\n      type=\"module\"\n      async\n      src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.mjs\"\n    ></script>\n    <script\n      nomodule\n      async\n      src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.js\"\n    ></script>\n    <link\n      rel=\"stylesheet\"\n      type=\"text/css\"\n      href=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.css\"\n    />\n  </head>\n  <body>\n    <bento-date-display\n      datetime=\"2021-09-09T16:02:08.494Z\"\n      displayIn=\"utc\"\n      locale=\"en-GB\"\n    >\n      <template>\n        <div>ISO: {{iso}}; locale: {{localeString}}</div>\n      </template>\n    </bento-date-display>\n  </body>\n</html>\n```\n\n### Interactivity and API usage\n\nThe Bento Date Display component does not have an imperative API. However, the Bento Date Display Web Component will render a mustache-template, provided by the consumer in a `<template>` tag with `type=\"amp-mustache\"`. This template may interpolate date-related parameters. See the [Returned Time Parameters section](#returned-time-parameters) for a full list of all the available parameters.\n\n### Layout and style\n\nEach Bento component has a small CSS library you must include to guarantee proper loading without [content shifts](https://web.dev/cls/). Because of order-based specificity, you must manually ensure that stylesheets are included before any custom styles.\n\n```html\n<link rel=\"stylesheet\" type=\"text/css\" href=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.css\">\n```\n\nAlternatively, you may also make the light-weight pre-upgrade styles available inline:\n\n```html\n<style data-bento-boilerplate>\n  bento-date-display {\n    display: block;\n    overflow: hidden;\n    position: relative;\n  }\n</style>\n```\n\n### Attributes\n\n#### `datetime`\n\nThe `datetime` attribute specifies the date and time in a standard ISO 8601 date\nstring (e.g. 2017-08-02T15:05:05.000Z) or the string `now`. If set to `now`,\n`bento-date-display` will use the time the page loaded to render its template.\n\n#### `timestamp-ms`\n\nThe `timestamp-ms` attribute specifies the date and time using the number of\nmilliseconds since 1970-01-01T0:00:00.000Z\n\n#### `timestamp-seconds`\n\nThe `timestamp-seconds` attribute specifies the date and time using the number\nof seconds since 1970-01-01T0:00:00.000Z\n\n#### `locale` (optional)\n\nAn internationalization language string for each timer unit. The default value\nis `en` (for English). This attribute supports all values that are supported by\nthe user's browser.\n\n#### `display-in` (optional)\n\nIf set to the value `utc`, the `display-in` attribute will convert the given\ndate to UTC.\n\n#### `offset-seconds` (optional)\n\nThe `offset-seconds` attribute specifies an integer number of seconds to shift\nthe given date.\n\n#### `data-options-\\*` (optional)\n\nThe `data-options-*` supports all the options under [Intl.DateTimeFormat.options](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/DateTimeFormat#parameters)\nparameter that specifies the formatting style to use for `localeString` format.\nValid attributes include: `data-options-date-style`, `data-options-time-style`, etc.\n\nNote that if `display-in` attrubute is set to `utc`, the value of\n`data-options-time-zone` will automatically be converted to `UTC`.\n\n### Styling\n\nYou may use the `bento-date-display` element selector to style the Bento Date Display component freely.\n\n---\n\n## Preact/React Component\n\n### Import via npm\n\n```sh\nnpm install @bentoproject/date-display\n```\n\n```javascript\nimport React from 'react';\nimport {BentoDateDisplay} from '@bentoproject/date-display/react';\nimport '@bentoproject/date-display/styles.css';\n\nfunction App() {\n  return (\n    <BentoDateDisplay\n      datetime={dateTime}\n      displayIn={displayIn}\n      locale={locale}\n      render={(date) => (\n        <div>{`ISO: ${date.iso}; locale: ${date.localeString}`}</div>\n      )}\n    />\n  );\n}\n```\n\n### Interactivity and API usage\n\nThe Bento Date Display component does not have an imperative API. However, the Bento Date Display Preact/React component does accept a `render` prop that renders the consumer's template. This `render` prop should be a function which the Bento Date Display Preact/React component can use to render its template. The `render` callback will be provided a variety of date-related parameters for consumers to interpolate in the rendered template. See the [`render` prop section](#render) for more information.\n\n### Layout and style\n\nThe Bento Date Display Preact/React component allows consumers to render their own templates. These templates may use inline styles, `<style>` tags, Preact/React components that import their own stylesheets.\n\n### Props\n\n#### `datetime`\n\nRequired prop. Denotes the date and time as a Date, String, or Number. If String, must be a standard ISO 8601 date string (e.g. 2017-08-02T15:05:05.000Z) or the string `now`. If set to `now`, it will use the time the page loaded to render its template. If Number, must be a POSIX epoch value in milliseconds.\n\n#### `displayIn`\n\nOptional prop that can be either `\"utc\"` or `\"local\"` and defaults to `\"local\"`. This prop indicates what timezone to display the date in. If set to the value `\"utc\"`, the component will convert the given date to UTC.\n\n#### `locale`\n\nAn internationalization language string for each timer unit. The default value is `en` (for English). This prop supports all values that are supported by the user's browser.\n\n#### `localeOptions`\n\nThe `localeOptions` object supports all the options under [Intl.DateTimeFormat.options](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/DateTimeFormat#parameters) parameter that specifies the formatting style to use for `localeString` format.\n\nNote that if the `displayIn` prop is set to `utc`, the value of `localeOptions.timeZone` will automatically be converted to `UTC`.\n\n#### `render`\n\nOptional callback that should render a template. The callback will be provided an object with properties/values related to the date expressed in `datetime`.\n\nBy default, the Bento Date Display component will display the [`localeString` form of the Date](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/toLocaleString) for the given locale and localeOption. See the [Returned Time Parameters section](#returned-time-parameters) for more details on how each property will be displayed.\n\n```typescript\n(dateParams: DateParams) => JSXInternal.Element\ninterface DateParams {\n  day: number;\n  dayName: string;\n  dayNameShort: string;\n  dayPeriod: string;\n  dayTwoDigit: string;\n  hour: number;\n  hour12: number;\n  hour12TwoDigit: string;\n  hourTwoDigit: string;\n  iso: string;\n  localeString: string;\n  minute: number;\n  minuteTwoDigit: string;\n  month: number;\n  monthName: string;\n  monthNameShort: string;\n  monthTwoDigit: string;\n  second: number;\n  secondTwoDigit: string;\n  timeZoneName: string;\n  timeZoneNameShort: string;\n  year: number;\n  yearTwoDi: string;\n}\n```\n\n### Returned Time Parameters\n\nThis table lists the format you can specify in your Mustache template:\n\n| Format            | Meaning                                                       |\n| ----------------- | ------------------------------------------------------------- |\n| day               | 1, 2, ...12, 13, etc.                                         |\n| dayName           | string,                                                       |\n| dayNameShort      | string,                                                       |\n| dayPeriod         | string,                                                       |\n| dayTwoDigit       | 01, 02, 03, ..., 12, 13, etc.                                 |\n| hour              | 0, 1, 2, 3, ..., 12, 13, ..., 22, 23                          |\n| hour12            | 1, 2, 3, ..., 12, 1, 2, ..., 11, 12                           |\n| hour12TwoDigit    | 01, 02, ..., 12, 01, 02, ..., 11, 12                          |\n| hourTwoDigit      | 00, 01, 02, ..., 12, 13, ..., 22, 23                          |\n| iso               | A standard ISO8601 date string e.g. 2019-01-23T15:31:21.213Z, |\n| localeString      | A string with a language sensitive representation.            |\n| minute            | 0, 1, 2, ..., 58, 59                                          |\n| minuteTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| month             | 1, 2, 3, ..., 12                                              |\n| monthName         | Internationalized month name string.                          |\n| monthNameShort    | Internationalized abbreviated month name string.,             |\n| monthTwoDigit     | 01, 02, ..., 11, 12                                           |\n| second            | 0, 1, 2, ..., 58, 59                                          |\n| secondTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| timeZoneName      | Internationalized timezone, like `Pacific Daylight Time`      |\n| timeZoneNameShort | Internationalized timezone, abbreviated, like `PST`           |\n| year              | 0, 1, 2, ..., 1999, 2000, 2001, etc.                          |\n| yearTwoDigit      | 00, 01, 02, ..., 17, 18, 19, ..., 98, 99                      |\n","readmeFilename":"README.md","gitHead":"32e83d3790f33da4840247d996ed3f6b256a796d","bugs":{"url":"https://github.com/ampproject/amphtml/issues"},"_id":"@bentoproject/date-display@1.2206082301.0","_nodeVersion":"16.15.0","_npmVersion":"8.5.5","dist":{"integrity":"sha512-VTIrQfSxs8AZbaj9nQzgBVC1MvHGJ2qAYZVh34W6pNkC5s6k2lImpAveWqYoYI9xFbI4ZrPnMzIa3dwOFUg7ZQ==","shasum":"ff39fccf73161a3fc756a48d0a8bad21aa531b45","tarball":"https://registry.npmjs.org/@bentoproject/date-display/-/date-display-1.2206082301.0.tgz","fileCount":29,"unpackedSize":677013,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDF7ll0jqMNa6fGOWIE+a4wYuVGp9yC/BN6EbbD0gPn6QIgOIN4WmjJtXv72L205ilMunZawUCG1ALXh/NGPJtbXH0="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJioa9+ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmp8Mw/8D9gt3OLDDOMT8mQubmlpMNQ6kVokNzorgCrhDWciW0Gmg/Sk\r\n2JeX3voznGSALLg4F0b5O0PDMbxllCtrIGdo4TY9pr3Vvwv56WGUoLlT8rZq\r\na0vaSqjknx/e3FGpuilWsmKKp9MyQ4bsRgMm8EnjUSrSikquyrH4LT+1mpvp\r\nIdzKW+4Aann1hLXXvRXcW4lM6lJ8A1ceaDOKoatBFtI0FWTFzLB+JoATm1uI\r\nhzAkHK8WtMxGZJI6xt9eFUCWn9zM6gn6qyW/X5LKApEo+jK44r4teOH+PRBC\r\nyGuIrgPrZSGgjuQEAsRt5uGCyBW02q15WVLgEWmHW1VsvV6LxyTb9ZbEGyrF\r\ntwQFkDq+cIbw1oe4rdfbsDGe4HwVqJXnKbx3rEn7R0KWNG8gUvlYSi0XZS53\r\n+WoptraNmoYGzaQdlIjzJcGliBM+C7xLIFQzoaPkbTcakjgL9UmUJZMF4eOT\r\nj/gNyE9WwqhqyuXdfAeEyhSay74ACTRnzKiGLtsrRG/oiwhEZRIjAp4MzikN\r\nQQTyCgjp6WuTxSWZHi4UnRZP9pNkP7HhzU7UwOyFfG3r76c/y1X+QnbaoqAl\r\n4izEaBZGLOJiqSJirNzg8McISR2rgYVaNqcgZD6beqTNGYbwHeCRnaUbFkP3\r\neZNYt3Q8gdxE0/ZIolts4SdcImDzfYYU3cs=\r\n=rgji\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"bentoprojectbot","email":"bentobot@amp.dev"},"directories":{},"maintainers":[{"name":"bentoprojectbot","email":"bentobot@amp.dev"},{"name":"kristoferbaxter","email":"kbax@me.com"},{"name":"esth","email":"esther@amp.dev"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/date-display_1.2206082301.0_1654763390312_0.569240480580004"},"_hasShrinkwrap":false},"1.2205270638.4":{"name":"@bentoproject/date-display","version":"1.2205270638.4","description":"Displays time data that you can render in your page.","author":{"name":"Bento Authors"},"license":"Apache-2.0","main":"./dist/web-component.js","module":"./dist/web-component.module.js","exports":{".":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./web-component":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./preact":{"import":"./dist/component-preact.module.js","require":"./dist/component-preact.js"},"./react":{"import":"./dist/component-react.module.js","require":"./dist/component-react.js"},"./web-component.css":"./dist/web-component.css"},"repository":{"type":"git","url":"git+https://github.com/ampproject/amphtml.git","directory":"extensions/amp-date-display/1.0"},"homepage":"https://github.com/ampproject/amphtml/tree/main/extensions/amp-date-display/1.0","peerDependencies":{"preact":"^10.2.1","react":"^17.0.0"},"dependencies":{"@bentoproject/core":"0.2205270638.4"},"gitHead":"89e43e107472144de698a2c3ebc9e78ef35d58b9","bugs":{"url":"https://github.com/ampproject/amphtml/issues"},"_id":"@bentoproject/date-display@1.2205270638.4","_nodeVersion":"16.15.1","_npmVersion":"8.11.0","dist":{"integrity":"sha512-UtnrfkeWnBh0WN5YmOgm5HYIYmZq+wdSgO6LZNLW2dKfigF+8lt8GQ9Ea2dro6Aq3Fhc+hi6xYhf9GPXbyNZxg==","shasum":"28e43775ba8fd424db4708755b795d07533ade53","tarball":"https://registry.npmjs.org/@bentoproject/date-display/-/date-display-1.2205270638.4.tgz","fileCount":29,"unpackedSize":677013,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIAw7kI6J1JwjP1v9k4blcRGpp0qEOnbInb849l+y5BIFAiA6mImmNeqmAisheLuAVT2+ZTpKOHugQYSftDT75Ax3XA=="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJio7jRACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqjLhAAgrJc2O3FRXV197dAZyWitV+B70/gvPvT3zmMgbzpE4ENL43A\r\ngdOv9DZYcllaj4M36ApXTPwex2xJN0RXRSVubQBeELvW+ga7BnQRTuHOdkz1\r\nv/Fc3s38komZwCeCEEY8W/x3B2RapqqS0PhTevwamwK9YrZkxmlilerAOdMS\r\npVaeAaKfztSebaQv+T6VI8xPs31XxjQD5P7Veo5iXnXclkkUkh4ughXxUiDj\r\nsA+4ly75tDDHWk8Bs0toUOgsqLhfLREDXmfhQFcdsSs3AgsxOZ6lrNonvv85\r\nWtsNKjbZMoAdA8P3aBZk3B/E8uz2Z+9oIsFdLWmL5ZqEo1m7dJuxaXIN2QGc\r\ne8HH8eia5eaUq+rfzddTSG/+MzWqz3o2NgFD8rR6sRywcF1WH21VIX2veIgx\r\nPdDrA8eawEM/yo74GKsJaDcAx4HNYmUJS8ZGjLKw12sQeV0AggE0WYka/D+W\r\n7sbqDLR4Kv4vS6LxkM2xZ0+qKIte8BpslUnSQ+57KBO3228wZgEJzf0dxVjh\r\nMec1kiFrKsAxIuPQPeJWe5vaatXtqkW6t4L2Lc2WE7Ym6v8TmJn2J4E5hgQ0\r\nGOLA0y8d3ym0eCZw937tisOyvHma0QeIpH1FpZWOkNOCSpesjxOwLgZoCb8E\r\n230/STVJhqZ3sQtJPEubOEUsOVWL8Fg3Px8=\r\n=zblw\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"bentoprojectbot","email":"bentobot@amp.dev"},"directories":{},"maintainers":[{"name":"bentoprojectbot","email":"bentobot@amp.dev"},{"name":"kristoferbaxter","email":"kbax@me.com"},{"name":"esth","email":"esther@amp.dev"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/date-display_1.2205270638.4_1654896848872_0.6567896969389679"},"_hasShrinkwrap":false},"1.2206101637.0":{"name":"@bentoproject/date-display","version":"1.2206101637.0","description":"Displays time data that you can render in your page.","author":{"name":"Bento Authors"},"license":"Apache-2.0","main":"./dist/web-component.js","module":"./dist/web-component.module.js","exports":{".":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./web-component":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./preact":{"import":"./dist/component-preact.module.js","require":"./dist/component-preact.js"},"./react":{"import":"./dist/component-react.module.js","require":"./dist/component-react.js"},"./web-component.css":"./dist/web-component.css"},"repository":{"type":"git","url":"git+https://github.com/ampproject/amphtml.git","directory":"extensions/amp-date-display/1.0"},"homepage":"https://github.com/ampproject/amphtml/tree/main/extensions/amp-date-display/1.0","peerDependencies":{"preact":"^10.2.1","react":"^17.0.0"},"dependencies":{"@bentoproject/core":"0.2206101637.0"},"gitHead":"89e43e107472144de698a2c3ebc9e78ef35d58b9","bugs":{"url":"https://github.com/ampproject/amphtml/issues"},"_id":"@bentoproject/date-display@1.2206101637.0","_nodeVersion":"16.15.1","_npmVersion":"8.11.0","dist":{"integrity":"sha512-xczQPGcdjTMdeJf5leq17jwucJrMfZVJabhiOtzj6Fi6+0dpeKiow+bZ1VpjnLEqFx800dBj4ujJOUA7t3xWGQ==","shasum":"1f144a61303357429e9204e6975b4b4cadc62430","tarball":"https://registry.npmjs.org/@bentoproject/date-display/-/date-display-1.2206101637.0.tgz","fileCount":29,"unpackedSize":677013,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIDMltKzrg1Y4LZioOPyumwrERFUmA896NNBiUZnF8UvPAiBv/XmAQzAbmW2JXsYyZBcgHEwwg5KclK2r6Ixk2K6IuQ=="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJipFGFACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmp/oA/+JrgGjZqDGpITZGS+LKb07xrdzquKrNDPqqHBEUtgkqgeGilP\r\n9cq34dFot77VwAxm/3dF5VRLTzn+1AKyws+3rfUXXkAwaztklNQCamr0QmMn\r\noCJbvFecq8q4x6X17XcNcdnGERy1Ha8X4lxdKngIvrt+YeS2XD7kfdP1CbO2\r\n+4sys80KdHfFlLskpJUR9U+lAqgivoL8c4KyUQs9N/+Uf1EWezyUWB7nsEGJ\r\n7/dj36vhiPDhnNCPTaIpD2oUSNeIq0GjX8Wv15VTNdUwrfQEHINVonhfF7JZ\r\nFw8vB2SsHDsMBYpLs3OepI28vfNx9wtz3ZgLtJIpjvZs3MNR7tZnvSC915Nq\r\neiu9+Y3ccPOvATnGlfM/dRr3HtHT+HjFmdNEMvpqMzVuh30AN+Uzxf/Ph8yg\r\n5+bjbk/JgXj2HZ+zi3cxa660n7o2NpGvcpdWwLhaHs2pWzpRwF1+2Z8rgYMI\r\n3nbFob64CjEJ3rRlewimuyFfheXvyANmk3lrzE2DcLbmGloNvXfnavdcUvMl\r\n7xnXCAY/KQNqZONlCWFnS4js4z4iZYMCaFM+0CBN6u4Wls48zLoBXmQGyJbP\r\np0lpH8coiRG+ZX6oXTv9eLdTZxrJGawGJptjfy9sjhhDlRK2+3iVXqkEbGfv\r\noLZ4puwcSzTeoATYCxQMR4OlPon9DAEVF4M=\r\n=SH6l\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"bentoprojectbot","email":"bentobot@amp.dev"},"directories":{},"maintainers":[{"name":"bentoprojectbot","email":"bentobot@amp.dev"},{"name":"kristoferbaxter","email":"kbax@me.com"},{"name":"esth","email":"esther@amp.dev"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/date-display_1.2206101637.0_1654935941236_0.5427386755133428"},"_hasShrinkwrap":false},"1.2206131450.0":{"name":"@bentoproject/date-display","version":"1.2206131450.0","description":"Displays time data that you can render in your page.","author":{"name":"Bento Authors"},"license":"Apache-2.0","main":"./dist/web-component.js","module":"./dist/web-component.module.js","exports":{".":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./web-component":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./preact":{"import":"./dist/component-preact.module.js","require":"./dist/component-preact.js"},"./react":{"import":"./dist/component-react.module.js","require":"./dist/component-react.js"},"./web-component.css":"./dist/web-component.css"},"repository":{"type":"git","url":"git+https://github.com/ampproject/amphtml.git","directory":"extensions/amp-date-display/1.0"},"homepage":"https://github.com/ampproject/amphtml/tree/main/extensions/amp-date-display/1.0","peerDependencies":{"preact":"^10.2.1","react":"^17.0.0"},"dependencies":{"@bentoproject/core":"0.2206131450.0"},"readme":"# Bento Date Display\n\nDisplays time data that you can render in your page. By providing specific [attributes](#attributes) in the Bento Date Display tag, the Bento Date Display extension returns a list of time parameters, which you can pass to [an amp-mustache template](../../amp-mustache/amp-mustache.md) for rendering. Refer to the [list below for each returned time parameter](#returned-time-parameters).\n\n## Web Component\n\nYou must include each Bento component's required CSS library to guarantee proper loading and before adding custom styles. Or use the light-weight pre-upgrade styles available inline. See [Layout and style](#layout-and-style).\n\n### Example: Import via npm\n\nInstall via npm:\n\n```sh\nnpm install @bentoproject/bento-date-display\n```\n\n```javascript\nimport {defineElement as defineBentoDateDisplay} from '@bentoproject/bento-date-display';\ndefineBentoDateDisplay();\n```\n\n### Include via `<script>`\n\n```html\n<script type=\"module\" src=\"https://cdn.ampproject.org/bento.mjs\" crossorigin=\"anonymous\"></script>\n<script nomodule src=\"https://cdn.ampproject.org/bento.js\" crossorigin=\"anonymous\"></script>\n<!-- Include bento-mustache.js to use mustache templates with this component -->\n<script async src=\"https://cdn.ampproject.org/v0/bento-mustache.js\"></script>\n<script type=\"module\" src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.mjs\" crossorigin=\"anonymous\"></script>\n<script nomodule src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.js\" crossorigin=\"anonymous\"></script>\n<link rel=\"stylesheet\" href=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.css\" crossorigin=\"anonymous\">\n```\n\n### Example\n\n```html\n<!DOCTYPE html>\n<html>\n  <head>\n    <script\n      type=\"module\"\n      async\n      src=\"https://cdn.ampproject.org/bento.mjs\"\n    ></script>\n    <script nomodule src=\"https://cdn.ampproject.org/bento.js\"></script>\n    <script async src=\"https://cdn.ampproject.org/v0/bento-mustache.js\"></script>\n    <script\n      type=\"module\"\n      async\n      src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.mjs\"\n    ></script>\n    <script\n      nomodule\n      async\n      src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.js\"\n    ></script>\n    <link\n      rel=\"stylesheet\"\n      type=\"text/css\"\n      href=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.css\"\n    />\n  </head>\n  <body>\n    <bento-date-display\n      datetime=\"2021-09-09T16:02:08.494Z\"\n      displayIn=\"utc\"\n      locale=\"en-GB\"\n    >\n      <template>\n        <div>ISO: {{iso}}; locale: {{localeString}}</div>\n      </template>\n    </bento-date-display>\n  </body>\n</html>\n```\n\n### Interactivity and API usage\n\nThe Bento Date Display component does not have an imperative API. However, the Bento Date Display Web Component will render a mustache-template, provided by the consumer in a `<template>` tag with `type=\"amp-mustache\"`. This template may interpolate date-related parameters. See the [Returned Time Parameters section](#returned-time-parameters) for a full list of all the available parameters.\n\n### Layout and style\n\nEach Bento component has a small CSS library you must include to guarantee proper loading without [content shifts](https://web.dev/cls/). Because of order-based specificity, you must manually ensure that stylesheets are included before any custom styles.\n\n```html\n<link rel=\"stylesheet\" type=\"text/css\" href=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.css\">\n```\n\nAlternatively, you may also make the light-weight pre-upgrade styles available inline:\n\n```html\n<style data-bento-boilerplate>\n  bento-date-display {\n    display: block;\n    overflow: hidden;\n    position: relative;\n  }\n</style>\n```\n\n### Attributes\n\n#### `datetime`\n\nThe `datetime` attribute specifies the date and time in a standard ISO 8601 date\nstring (e.g. 2017-08-02T15:05:05.000Z) or the string `now`. If set to `now`,\n`bento-date-display` will use the time the page loaded to render its template.\n\n#### `timestamp-ms`\n\nThe `timestamp-ms` attribute specifies the date and time using the number of\nmilliseconds since 1970-01-01T0:00:00.000Z\n\n#### `timestamp-seconds`\n\nThe `timestamp-seconds` attribute specifies the date and time using the number\nof seconds since 1970-01-01T0:00:00.000Z\n\n#### `locale` (optional)\n\nAn internationalization language string for each timer unit. The default value\nis `en` (for English). This attribute supports all values that are supported by\nthe user's browser.\n\n#### `display-in` (optional)\n\nIf set to the value `utc`, the `display-in` attribute will convert the given\ndate to UTC.\n\n#### `offset-seconds` (optional)\n\nThe `offset-seconds` attribute specifies an integer number of seconds to shift\nthe given date.\n\n#### `data-options-\\*` (optional)\n\nThe `data-options-*` supports all the options under [Intl.DateTimeFormat.options](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/DateTimeFormat#parameters)\nparameter that specifies the formatting style to use for `localeString` format.\nValid attributes include: `data-options-date-style`, `data-options-time-style`, etc.\n\nNote that if `display-in` attrubute is set to `utc`, the value of\n`data-options-time-zone` will automatically be converted to `UTC`.\n\n### Styling\n\nYou may use the `bento-date-display` element selector to style the Bento Date Display component freely.\n\n---\n\n## Preact/React Component\n\n### Import via npm\n\n```sh\nnpm install @bentoproject/date-display\n```\n\n```javascript\nimport React from 'react';\nimport {BentoDateDisplay} from '@bentoproject/date-display/react';\nimport '@bentoproject/date-display/styles.css';\n\nfunction App() {\n  return (\n    <BentoDateDisplay\n      datetime={dateTime}\n      displayIn={displayIn}\n      locale={locale}\n      render={(date) => (\n        <div>{`ISO: ${date.iso}; locale: ${date.localeString}`}</div>\n      )}\n    />\n  );\n}\n```\n\n### Interactivity and API usage\n\nThe Bento Date Display component does not have an imperative API. However, the Bento Date Display Preact/React component does accept a `render` prop that renders the consumer's template. This `render` prop should be a function which the Bento Date Display Preact/React component can use to render its template. The `render` callback will be provided a variety of date-related parameters for consumers to interpolate in the rendered template. See the [`render` prop section](#render) for more information.\n\n### Layout and style\n\nThe Bento Date Display Preact/React component allows consumers to render their own templates. These templates may use inline styles, `<style>` tags, Preact/React components that import their own stylesheets.\n\n### Props\n\n#### `datetime`\n\nRequired prop. Denotes the date and time as a Date, String, or Number. If String, must be a standard ISO 8601 date string (e.g. 2017-08-02T15:05:05.000Z) or the string `now`. If set to `now`, it will use the time the page loaded to render its template. If Number, must be a POSIX epoch value in milliseconds.\n\n#### `displayIn`\n\nOptional prop that can be either `\"utc\"` or `\"local\"` and defaults to `\"local\"`. This prop indicates what timezone to display the date in. If set to the value `\"utc\"`, the component will convert the given date to UTC.\n\n#### `locale`\n\nAn internationalization language string for each timer unit. The default value is `en` (for English). This prop supports all values that are supported by the user's browser.\n\n#### `localeOptions`\n\nThe `localeOptions` object supports all the options under [Intl.DateTimeFormat.options](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/DateTimeFormat#parameters) parameter that specifies the formatting style to use for `localeString` format.\n\nNote that if the `displayIn` prop is set to `utc`, the value of `localeOptions.timeZone` will automatically be converted to `UTC`.\n\n#### `render`\n\nOptional callback that should render a template. The callback will be provided an object with properties/values related to the date expressed in `datetime`.\n\nBy default, the Bento Date Display component will display the [`localeString` form of the Date](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/toLocaleString) for the given locale and localeOption. See the [Returned Time Parameters section](#returned-time-parameters) for more details on how each property will be displayed.\n\n```typescript\n(dateParams: DateParams) => JSXInternal.Element\ninterface DateParams {\n  day: number;\n  dayName: string;\n  dayNameShort: string;\n  dayPeriod: string;\n  dayTwoDigit: string;\n  hour: number;\n  hour12: number;\n  hour12TwoDigit: string;\n  hourTwoDigit: string;\n  iso: string;\n  localeString: string;\n  minute: number;\n  minuteTwoDigit: string;\n  month: number;\n  monthName: string;\n  monthNameShort: string;\n  monthTwoDigit: string;\n  second: number;\n  secondTwoDigit: string;\n  timeZoneName: string;\n  timeZoneNameShort: string;\n  year: number;\n  yearTwoDi: string;\n}\n```\n\n### Returned Time Parameters\n\nThis table lists the format you can specify in your Mustache template:\n\n| Format            | Meaning                                                       |\n| ----------------- | ------------------------------------------------------------- |\n| day               | 1, 2, ...12, 13, etc.                                         |\n| dayName           | string,                                                       |\n| dayNameShort      | string,                                                       |\n| dayPeriod         | string,                                                       |\n| dayTwoDigit       | 01, 02, 03, ..., 12, 13, etc.                                 |\n| hour              | 0, 1, 2, 3, ..., 12, 13, ..., 22, 23                          |\n| hour12            | 1, 2, 3, ..., 12, 1, 2, ..., 11, 12                           |\n| hour12TwoDigit    | 01, 02, ..., 12, 01, 02, ..., 11, 12                          |\n| hourTwoDigit      | 00, 01, 02, ..., 12, 13, ..., 22, 23                          |\n| iso               | A standard ISO8601 date string e.g. 2019-01-23T15:31:21.213Z, |\n| localeString      | A string with a language sensitive representation.            |\n| minute            | 0, 1, 2, ..., 58, 59                                          |\n| minuteTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| month             | 1, 2, 3, ..., 12                                              |\n| monthName         | Internationalized month name string.                          |\n| monthNameShort    | Internationalized abbreviated month name string.,             |\n| monthTwoDigit     | 01, 02, ..., 11, 12                                           |\n| second            | 0, 1, 2, ..., 58, 59                                          |\n| secondTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| timeZoneName      | Internationalized timezone, like `Pacific Daylight Time`      |\n| timeZoneNameShort | Internationalized timezone, abbreviated, like `PST`           |\n| year              | 0, 1, 2, ..., 1999, 2000, 2001, etc.                          |\n| yearTwoDigit      | 00, 01, 02, ..., 17, 18, 19, ..., 98, 99                      |\n","readmeFilename":"README.md","gitHead":"f8fbcf58e78ea43df73b529ed4a25e79ac758981","bugs":{"url":"https://github.com/ampproject/amphtml/issues"},"_id":"@bentoproject/date-display@1.2206131450.0","_nodeVersion":"16.15.1","_npmVersion":"8.11.0","dist":{"integrity":"sha512-lmdi8zb1W0CYE4e8wm0oDF0xcdq/EVBRKrT9FYQePBWnb9IcCTJQWm+NL/v3TvsOsXfUtbufeN9bz1BF0GYiog==","shasum":"790ef4b197ec7c1f9e477bc1e6047ef1b486bc97","tarball":"https://registry.npmjs.org/@bentoproject/date-display/-/date-display-1.2206131450.0.tgz","fileCount":29,"unpackedSize":677013,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCICBVSDEgVbdenUtwBy2rMkozrm7m4onRsk8g2aUDxSmjAiBvtxqlYOvXTFKHiNw5uCJ38WKNYJsd4r2d0aW39gTKcQ=="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiqEZNACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpMCRAAjtam7XLIOaqNp/F/RQub5Okw/SrizUeoOfEh/5yBfZ2EfpQx\r\na+5fj0fRSdQHp9++EEzra9Nr0oWGSruN8eALKUaldfFPHT0aIL8Wzr7H9kVr\r\n7MMka7rCBB1pueXj9zE0rOsJk5HI5yFV1fFPVOujko0fMNlj5EqhtSnV5yCY\r\n3cWfpfkuxu4PP7j/Gze6ipizLASiRE0isrOyaTjVKOuudFIuL0rrbWXFv6JT\r\n+NAQasZS7UAy0oJgpLuT2YIJwTVZoQmbHQ8UNVidadbkpePxfLn8bGlX/2tW\r\nByq6DANuXOQDD2QjWBp4SBJVmCjhCtlkwjYgxkR9ClNItddmHfeFcQTa3UiU\r\nhz7z+K+svf+zOTFU9gA8VPyCtNT0tCVETTSIyquIa2YXq/Xr4gWPBuYh0y15\r\nZ7Ik9JedCig5hXt9FodBGi5eOeM0aq5T/AodX733/h6dew2r62kVSGVEWDJk\r\n4HDORlFQBqy4foQKLt/oJunZ8HQ4YJVzT57+lx4vuI8I0VzDzoJn7JPHRTJ0\r\n0tRVHy6xtpPQWfv6tbCoEvWuwfQsEJrcP6ICr+trcVVo9nKfg8wI2zgeNUhQ\r\nbK2Logu97d1pXwrarh5E0+vK26f8Wln7zQ5atMjJZZrI03WuxFlWAIJcB0fk\r\n44EUE/xVKAjoM7NF7zrjxofZL9m4f0AdRWM=\r\n=oGcx\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"bentoprojectbot","email":"bentobot@amp.dev"},"directories":{},"maintainers":[{"name":"bentoprojectbot","email":"bentobot@amp.dev"},{"name":"kristoferbaxter","email":"kbax@me.com"},{"name":"esth","email":"esther@amp.dev"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/date-display_1.2206131450.0_1655195213065_0.758914913685913"},"_hasShrinkwrap":false},"1.2206071918.1":{"name":"@bentoproject/date-display","version":"1.2206071918.1","description":"Displays time data that you can render in your page.","author":{"name":"Bento Authors"},"license":"Apache-2.0","main":"./dist/web-component.js","module":"./dist/web-component.module.js","exports":{".":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./web-component":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./preact":{"import":"./dist/component-preact.module.js","require":"./dist/component-preact.js"},"./react":{"import":"./dist/component-react.module.js","require":"./dist/component-react.js"},"./web-component.css":"./dist/web-component.css"},"repository":{"type":"git","url":"git+https://github.com/ampproject/amphtml.git","directory":"extensions/amp-date-display/1.0"},"homepage":"https://github.com/ampproject/amphtml/tree/main/extensions/amp-date-display/1.0","peerDependencies":{"preact":"^10.2.1","react":"^17.0.0"},"dependencies":{"@bentoproject/core":"0.2206071918.1"},"gitHead":"fb620756f1e66d99fa06cbc467207602e4aeafee","bugs":{"url":"https://github.com/ampproject/amphtml/issues"},"_id":"@bentoproject/date-display@1.2206071918.1","_nodeVersion":"16.15.1","_npmVersion":"8.11.0","dist":{"integrity":"sha512-lmC/GZbWtGYW5O9eVYnIWMcl3Qcr3zFCqxFy0FlfbUC4tkuLPTOo2cgaG0kme11UiSt1VxnUvIbQo2JSfM1GbA==","shasum":"36ef9ef2d1348116597c7f29b6b4ad26da0db498","tarball":"https://registry.npmjs.org/@bentoproject/date-display/-/date-display-1.2206071918.1.tgz","fileCount":29,"unpackedSize":677013,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIFmbhmWZOb0we63/IiZcf5iPH6FKZ06R1DoHa9bqSAKOAiBi4E/Evfi5JtY5XAteG9Bk7/WC+L23fMGFkuTo6F72Vw=="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiqPzhACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrqzxAAhLu//GH//V6desDJSBA7X9AbU2unjDGofzjJCrO2Y4NI/reJ\r\nsCRGKAqq3J8grk0vuXupb9qdDawuIrt3Hi6vdUtQUlK1aOhOgWXByWohWQyj\r\nK90ahDhcZ82j1DYHDG4VuJZLrVeIQ0AnVI2Fl3KtldVtvvptQkJ1KCV7AL03\r\nm5waiNWf8iY0DvU0BOR4WKbymv98dkoCqPcykNZ4adEzsgSWbPGAcGMiF9a2\r\nvGscqbe2pwYpl7VDWMmEvQ1aTwE/VLt4ZRuD/bRngtvY/qPQThg51r0hkcZQ\r\nbEjXkCiDw3fwjnLSPK93GCuoXkt+Y4jMOCQ6mxXoACjosIli3aO+kERG94qu\r\nsXHF4Wyi54nj91ueCguycCkj5IRH1dnxmFs6M+UM8tWdeLneVEhqYNIbTGvl\r\nUeDg17XMqcfg0bYEoRtHlPF0eTq0UROYdvaYgcC7g95UFg0ez5VOmd0KRMWV\r\nOWtq8YM4n9C7UM6/4mvTD+jqaqtwVMpG0GjgtC+aHxHMYDMYgodfE7+Y1IWV\r\nzXWnem1OS2acAqSy1q/0MOaXBo0PUU+NoqRD00zn7k1Hb8Dfh83GFOIsfjum\r\nZ06aWSmQ6t3IX8NN+lVC2LVOLLFPYvDt4CMUrsX2iwsOa023ytyjzUnXUgNn\r\n2WBrdPF0DR4b1DLk471BmHYRJjhcqa5Fvdw=\r\n=+toT\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"bentoprojectbot","email":"bentobot@amp.dev"},"directories":{},"maintainers":[{"name":"bentoprojectbot","email":"bentobot@amp.dev"},{"name":"kristoferbaxter","email":"kbax@me.com"},{"name":"esth","email":"esther@amp.dev"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/date-display_1.2206071918.1_1655241953174_0.36151642842140275"},"_hasShrinkwrap":false},"1.2206162023.0":{"name":"@bentoproject/date-display","version":"1.2206162023.0","description":"Displays time data that you can render in your page.","author":{"name":"Bento Authors"},"license":"Apache-2.0","main":"./dist/web-component.js","module":"./dist/web-component.module.js","exports":{".":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./web-component":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./preact":{"import":"./dist/component-preact.module.js","require":"./dist/component-preact.js"},"./react":{"import":"./dist/component-react.module.js","require":"./dist/component-react.js"},"./web-component.css":"./dist/web-component.css"},"repository":{"type":"git","url":"git+https://github.com/ampproject/amphtml.git","directory":"extensions/amp-date-display/1.0"},"homepage":"https://github.com/ampproject/amphtml/tree/main/extensions/amp-date-display/1.0","peerDependencies":{"preact":"^10.2.1","react":"^17.0.0"},"dependencies":{"@bentoproject/core":"0.2206162023.0"},"readme":"# Bento Date Display\n\nDisplays time data that you can render in your page. By providing specific [attributes](#attributes) in the Bento Date Display tag, the Bento Date Display extension returns a list of time parameters, which you can pass to [an amp-mustache template](../../amp-mustache/amp-mustache.md) for rendering. Refer to the [list below for each returned time parameter](#returned-time-parameters).\n\n## Web Component\n\nYou must include each Bento component's required CSS library to guarantee proper loading and before adding custom styles. Or use the light-weight pre-upgrade styles available inline. See [Layout and style](#layout-and-style).\n\n### Example: Import via npm\n\nInstall via npm:\n\n```sh\nnpm install @bentoproject/bento-date-display\n```\n\n```javascript\nimport {defineElement as defineBentoDateDisplay} from '@bentoproject/bento-date-display';\ndefineBentoDateDisplay();\n```\n\n### Include via `<script>`\n\n```html\n<script type=\"module\" src=\"https://cdn.ampproject.org/bento.mjs\" crossorigin=\"anonymous\"></script>\n<script nomodule src=\"https://cdn.ampproject.org/bento.js\" crossorigin=\"anonymous\"></script>\n<!-- Include bento-mustache.js to use mustache templates with this component -->\n<script async src=\"https://cdn.ampproject.org/v0/bento-mustache.js\"></script>\n<script type=\"module\" src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.mjs\" crossorigin=\"anonymous\"></script>\n<script nomodule src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.js\" crossorigin=\"anonymous\"></script>\n<link rel=\"stylesheet\" href=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.css\" crossorigin=\"anonymous\">\n```\n\n### Example\n\n```html\n<!DOCTYPE html>\n<html>\n  <head>\n    <script\n      type=\"module\"\n      async\n      src=\"https://cdn.ampproject.org/bento.mjs\"\n    ></script>\n    <script nomodule src=\"https://cdn.ampproject.org/bento.js\"></script>\n    <script async src=\"https://cdn.ampproject.org/v0/bento-mustache.js\"></script>\n    <script\n      type=\"module\"\n      async\n      src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.mjs\"\n    ></script>\n    <script\n      nomodule\n      async\n      src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.js\"\n    ></script>\n    <link\n      rel=\"stylesheet\"\n      type=\"text/css\"\n      href=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.css\"\n    />\n  </head>\n  <body>\n    <bento-date-display\n      datetime=\"2021-09-09T16:02:08.494Z\"\n      displayIn=\"utc\"\n      locale=\"en-GB\"\n    >\n      <template>\n        <div>ISO: {{iso}}; locale: {{localeString}}</div>\n      </template>\n    </bento-date-display>\n  </body>\n</html>\n```\n\n### Interactivity and API usage\n\nThe Bento Date Display component does not have an imperative API. However, the Bento Date Display Web Component will render a mustache-template, provided by the consumer in a `<template>` tag with `type=\"amp-mustache\"`. This template may interpolate date-related parameters. See the [Returned Time Parameters section](#returned-time-parameters) for a full list of all the available parameters.\n\n### Layout and style\n\nEach Bento component has a small CSS library you must include to guarantee proper loading without [content shifts](https://web.dev/cls/). Because of order-based specificity, you must manually ensure that stylesheets are included before any custom styles.\n\n```html\n<link rel=\"stylesheet\" type=\"text/css\" href=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.css\">\n```\n\nAlternatively, you may also make the light-weight pre-upgrade styles available inline:\n\n```html\n<style data-bento-boilerplate>\n  bento-date-display {\n    display: block;\n    overflow: hidden;\n    position: relative;\n  }\n</style>\n```\n\n### Attributes\n\n#### `datetime`\n\nThe `datetime` attribute specifies the date and time in a standard ISO 8601 date\nstring (e.g. 2017-08-02T15:05:05.000Z) or the string `now`. If set to `now`,\n`bento-date-display` will use the time the page loaded to render its template.\n\n#### `timestamp-ms`\n\nThe `timestamp-ms` attribute specifies the date and time using the number of\nmilliseconds since 1970-01-01T0:00:00.000Z\n\n#### `timestamp-seconds`\n\nThe `timestamp-seconds` attribute specifies the date and time using the number\nof seconds since 1970-01-01T0:00:00.000Z\n\n#### `locale` (optional)\n\nAn internationalization language string for each timer unit. The default value\nis `en` (for English). This attribute supports all values that are supported by\nthe user's browser.\n\n#### `display-in` (optional)\n\nIf set to the value `utc`, the `display-in` attribute will convert the given\ndate to UTC.\n\n#### `offset-seconds` (optional)\n\nThe `offset-seconds` attribute specifies an integer number of seconds to shift\nthe given date.\n\n#### `data-options-\\*` (optional)\n\nThe `data-options-*` supports all the options under [Intl.DateTimeFormat.options](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/DateTimeFormat#parameters)\nparameter that specifies the formatting style to use for `localeString` format.\nValid attributes include: `data-options-date-style`, `data-options-time-style`, etc.\n\nNote that if `display-in` attrubute is set to `utc`, the value of\n`data-options-time-zone` will automatically be converted to `UTC`.\n\n### Styling\n\nYou may use the `bento-date-display` element selector to style the Bento Date Display component freely.\n\n---\n\n## Preact/React Component\n\n### Import via npm\n\n```sh\nnpm install @bentoproject/date-display\n```\n\n```javascript\nimport React from 'react';\nimport {BentoDateDisplay} from '@bentoproject/date-display/react';\nimport '@bentoproject/date-display/styles.css';\n\nfunction App() {\n  return (\n    <BentoDateDisplay\n      datetime={dateTime}\n      displayIn={displayIn}\n      locale={locale}\n      render={(date) => (\n        <div>{`ISO: ${date.iso}; locale: ${date.localeString}`}</div>\n      )}\n    />\n  );\n}\n```\n\n### Interactivity and API usage\n\nThe Bento Date Display component does not have an imperative API. However, the Bento Date Display Preact/React component does accept a `render` prop that renders the consumer's template. This `render` prop should be a function which the Bento Date Display Preact/React component can use to render its template. The `render` callback will be provided a variety of date-related parameters for consumers to interpolate in the rendered template. See the [`render` prop section](#render) for more information.\n\n### Layout and style\n\nThe Bento Date Display Preact/React component allows consumers to render their own templates. These templates may use inline styles, `<style>` tags, Preact/React components that import their own stylesheets.\n\n### Props\n\n#### `datetime`\n\nRequired prop. Denotes the date and time as a Date, String, or Number. If String, must be a standard ISO 8601 date string (e.g. 2017-08-02T15:05:05.000Z) or the string `now`. If set to `now`, it will use the time the page loaded to render its template. If Number, must be a POSIX epoch value in milliseconds.\n\n#### `displayIn`\n\nOptional prop that can be either `\"utc\"` or `\"local\"` and defaults to `\"local\"`. This prop indicates what timezone to display the date in. If set to the value `\"utc\"`, the component will convert the given date to UTC.\n\n#### `locale`\n\nAn internationalization language string for each timer unit. The default value is `en` (for English). This prop supports all values that are supported by the user's browser.\n\n#### `localeOptions`\n\nThe `localeOptions` object supports all the options under [Intl.DateTimeFormat.options](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/DateTimeFormat#parameters) parameter that specifies the formatting style to use for `localeString` format.\n\nNote that if the `displayIn` prop is set to `utc`, the value of `localeOptions.timeZone` will automatically be converted to `UTC`.\n\n#### `render`\n\nOptional callback that should render a template. The callback will be provided an object with properties/values related to the date expressed in `datetime`.\n\nBy default, the Bento Date Display component will display the [`localeString` form of the Date](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/toLocaleString) for the given locale and localeOption. See the [Returned Time Parameters section](#returned-time-parameters) for more details on how each property will be displayed.\n\n```typescript\n(dateParams: DateParams) => JSXInternal.Element\ninterface DateParams {\n  day: number;\n  dayName: string;\n  dayNameShort: string;\n  dayPeriod: string;\n  dayTwoDigit: string;\n  hour: number;\n  hour12: number;\n  hour12TwoDigit: string;\n  hourTwoDigit: string;\n  iso: string;\n  localeString: string;\n  minute: number;\n  minuteTwoDigit: string;\n  month: number;\n  monthName: string;\n  monthNameShort: string;\n  monthTwoDigit: string;\n  second: number;\n  secondTwoDigit: string;\n  timeZoneName: string;\n  timeZoneNameShort: string;\n  year: number;\n  yearTwoDi: string;\n}\n```\n\n### Returned Time Parameters\n\nThis table lists the format you can specify in your Mustache template:\n\n| Format            | Meaning                                                       |\n| ----------------- | ------------------------------------------------------------- |\n| day               | 1, 2, ...12, 13, etc.                                         |\n| dayName           | string,                                                       |\n| dayNameShort      | string,                                                       |\n| dayPeriod         | string,                                                       |\n| dayTwoDigit       | 01, 02, 03, ..., 12, 13, etc.                                 |\n| hour              | 0, 1, 2, 3, ..., 12, 13, ..., 22, 23                          |\n| hour12            | 1, 2, 3, ..., 12, 1, 2, ..., 11, 12                           |\n| hour12TwoDigit    | 01, 02, ..., 12, 01, 02, ..., 11, 12                          |\n| hourTwoDigit      | 00, 01, 02, ..., 12, 13, ..., 22, 23                          |\n| iso               | A standard ISO8601 date string e.g. 2019-01-23T15:31:21.213Z, |\n| localeString      | A string with a language sensitive representation.            |\n| minute            | 0, 1, 2, ..., 58, 59                                          |\n| minuteTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| month             | 1, 2, 3, ..., 12                                              |\n| monthName         | Internationalized month name string.                          |\n| monthNameShort    | Internationalized abbreviated month name string.,             |\n| monthTwoDigit     | 01, 02, ..., 11, 12                                           |\n| second            | 0, 1, 2, ..., 58, 59                                          |\n| secondTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| timeZoneName      | Internationalized timezone, like `Pacific Daylight Time`      |\n| timeZoneNameShort | Internationalized timezone, abbreviated, like `PST`           |\n| year              | 0, 1, 2, ..., 1999, 2000, 2001, etc.                          |\n| yearTwoDigit      | 00, 01, 02, ..., 17, 18, 19, ..., 98, 99                      |\n","readmeFilename":"README.md","gitHead":"15781b541aae254d04a1cc777016aa40759100cb","bugs":{"url":"https://github.com/ampproject/amphtml/issues"},"_id":"@bentoproject/date-display@1.2206162023.0","_nodeVersion":"16.15.1","_npmVersion":"8.11.0","dist":{"integrity":"sha512-rNUEld7CjDl+ncVCkjIcyWMMAc37+MELsZXMG+4uPSSODpa1cfUjK4gEYvU8I/9mnMGmNXfJUfCZCwrKzzGp+Q==","shasum":"b66a8f1a136df6a4ceb9866754a076ee1fd79872","tarball":"https://registry.npmjs.org/@bentoproject/date-display/-/date-display-1.2206162023.0.tgz","fileCount":29,"unpackedSize":677013,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCICvlf3YqNyfHfF8z+ayYLdwGh3w3brCy82d2Jqx+obpoAiAT0ESnTcKuq6jlxLpl2cpIXDavmyg9xc/o9h5Nyyn5WQ=="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJirDqgACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrkvRAAkdA9JKJdg+aW/e3NGepOW6Fa0Fo/yyvD7gKe8HmdPy1B0zZE\r\nR+7QupAB0jXsL/xCKHgNYIn0YIHuMDzB9oK6d7xNVTcsOSX3m3sOfABYiUdp\r\nLKJjtSQEWaxJ7KQZyeZQgevfNOv4hO/laJiYErNcUZ4Om8EeM5m0yhh+p+sK\r\nCAU7CcRhrTONx3RIuZqwihkksZB4cGkJQscsjq+0SvXZoM0mCyEqCDCfdtSW\r\nquH1u6wzv7xbLPERN9W6LIaq/zQSLh+aGjh2kYMFH9/yOgMiPsMBbtm22hAG\r\nK1OKIvgFADTGR3HtqilESaiNDGSdcCwGVq8J1HQ1GPQ/M6Js4OI5FEmLXIF9\r\nnmAqLRahhhgvNaBAY+RrdaZ85TEPIQ6ySIiX/wAWeLO39Q2WggEDrrYQ1EFb\r\nqSAOmvfXWOTekzbNJaVtBSrFMQNppbndIlpnU9jjLqJYLoyBm7PrLM6FBrvq\r\n6wvxhhur3AvLiKcBjmPFVrXm6316B+Bhh15zDDHmGf3ojasoR5i2p4UNYY3z\r\n9orWOzMUH1z/azSgi+bGN2AO7HPoiJWNu4QqxX7BEvB9pnbtxFnhTDe0u3PK\r\nIo63p045jvsRQWUFENfPSmkF4qdv7u4J+Eum0Elo/uGqCZJKX0mKGKUp4DMA\r\nX+B0Pj7+h2Z+jvtYGBShHpshe68gPys1PdQ=\r\n=O9uD\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"bentoprojectbot","email":"bentobot@amp.dev"},"directories":{},"maintainers":[{"name":"bentoprojectbot","email":"bentobot@amp.dev"},{"name":"kristoferbaxter","email":"kbax@me.com"},{"name":"esth","email":"esther@amp.dev"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/date-display_1.2206162023.0_1655454368673_0.881120198162793"},"_hasShrinkwrap":false},"1.2206221455.0":{"name":"@bentoproject/date-display","version":"1.2206221455.0","description":"Displays time data that you can render in your page.","author":{"name":"Bento Authors"},"license":"Apache-2.0","main":"./dist/web-component.js","module":"./dist/web-component.module.js","exports":{".":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./web-component":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./preact":{"import":"./dist/component-preact.module.js","require":"./dist/component-preact.js"},"./react":{"import":"./dist/component-react.module.js","require":"./dist/component-react.js"},"./web-component.css":"./dist/web-component.css"},"repository":{"type":"git","url":"git+https://github.com/ampproject/amphtml.git","directory":"extensions/amp-date-display/1.0"},"homepage":"https://github.com/ampproject/amphtml/tree/main/extensions/amp-date-display/1.0","peerDependencies":{"preact":"^10.2.1","react":"^17.0.0"},"dependencies":{"@bentoproject/core":"0.2206221455.0"},"gitHead":"0f6cdcebd462d3dcf580d8df0a7dfcdc02de9061","bugs":{"url":"https://github.com/ampproject/amphtml/issues"},"_id":"@bentoproject/date-display@1.2206221455.0","_nodeVersion":"16.15.1","_npmVersion":"8.11.0","dist":{"integrity":"sha512-c0V9SX/sLyWXlAiQJe9yGl+fOBoAse3WQIUdmm5aAa1zViQB3pogJy5Lxk57bAtSfrEyJC/2N8+HwbYRUXpynw==","shasum":"f5e07fabcdb95fb3a575582201694da37853899f","tarball":"https://registry.npmjs.org/@bentoproject/date-display/-/date-display-1.2206221455.0.tgz","fileCount":29,"unpackedSize":677013,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIDxTaHTDIrX40PQZpcesnlnc9Ru0zde2HW0OkC5H/8LBAiEA7o+IJ0FaGkCqtpveScsUUGaenMRvIKdZudh/MlEdkbU="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJitCOpACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmqseg//YaEWCCiQZzPsBcoNTF2eeCtpqgB3HXOX64ZcPhgb+hExeoTl\r\nmD+EjcMe5Wakp4EeTnoJPW/kELsSA5HcuugPskhh2iT3n0Q72t9tW1psXByv\r\n5X8Vn1dtF2phJAJOogR2D5osK2GjUIxbNaD59S+GIBVdCjOC7ZqF7JVTehTl\r\ny3BzEGa3/oKlsaqeB9/B7UW4N6r+4mPT1OYK9ZQKoE3px57IBifXnfZ5e6pS\r\nchUehGeW3NAxmVn7SRyJaJIMyoSz6c9kXytp+0qmUMLIYLI1z6KKGNg4yMmP\r\n47vF4rVUgZ9uaq1vmBZ2oQ6AngA5i/Fh15ptici1/J9ebnAQmK1bAg9dDePF\r\n+xy6oADwhd5K/4LotaRFLx+fwsStvDekQdR2m41+bbprX2qDazuDwH2ukik2\r\nd8c/Is0dLOFOtm5Hz8g7USoG44u+NwdYJj59Q117LuOM+5dRoRDBCyq96UIC\r\nuCoKb72/+cNmq9rNNjkmUjDa61+sJXlku7GxsSw2D68tKaeN8D8/gIaOxK3x\r\n7C13oH6r4bqoNLUi8V0ca9pKst8OndiPP4EFf9UUygsn67/asIQZcrSwIoJu\r\nowj12YSPZA6wl9NB5h/16INZcavUmWWTM/xWClfYkxl2EPwoc1f27FGkM5Ya\r\nVm0fw6czyXCwFubsIW5IUK8Q10XbqXqRXE0=\r\n=XRNS\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"bentoprojectbot","email":"bentobot@amp.dev"},"directories":{},"maintainers":[{"name":"bentoprojectbot","email":"bentobot@amp.dev"},{"name":"kristoferbaxter","email":"kbax@me.com"},{"name":"esth","email":"esther@amp.dev"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/date-display_1.2206221455.0_1655972777040_0.9637164157519427"},"_hasShrinkwrap":false},"1.2206291614.0":{"name":"@bentoproject/date-display","version":"1.2206291614.0","description":"Displays time data that you can render in your page.","author":{"name":"Bento Authors"},"license":"Apache-2.0","main":"./dist/web-component.js","module":"./dist/web-component.module.js","exports":{".":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./web-component":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./preact":{"import":"./dist/component-preact.module.js","require":"./dist/component-preact.js"},"./react":{"import":"./dist/component-react.module.js","require":"./dist/component-react.js"},"./web-component.css":"./dist/web-component.css"},"repository":{"type":"git","url":"git+https://github.com/ampproject/amphtml.git","directory":"extensions/amp-date-display/1.0"},"homepage":"https://github.com/ampproject/amphtml/tree/main/extensions/amp-date-display/1.0","peerDependencies":{"preact":"^10.2.1","react":"^17.0.0"},"dependencies":{"@bentoproject/core":"0.2206291614.0"},"readme":"# Bento Date Display\n\nDisplays time data that you can render in your page. By providing specific [attributes](#attributes) in the Bento Date Display tag, the Bento Date Display extension returns a list of time parameters, which you can pass to [an amp-mustache template](../../amp-mustache/amp-mustache.md) for rendering. Refer to the [list below for each returned time parameter](#returned-time-parameters).\n\n## Web Component\n\nYou must include each Bento component's required CSS library to guarantee proper loading and before adding custom styles. Or use the light-weight pre-upgrade styles available inline. See [Layout and style](#layout-and-style).\n\n### Example: Import via npm\n\nInstall via npm:\n\n```sh\nnpm install @bentoproject/bento-date-display\n```\n\n```javascript\nimport {defineElement as defineBentoDateDisplay} from '@bentoproject/bento-date-display';\ndefineBentoDateDisplay();\n```\n\n### Include via `<script>`\n\n```html\n<script type=\"module\" src=\"https://cdn.ampproject.org/bento.mjs\" crossorigin=\"anonymous\"></script>\n<script nomodule src=\"https://cdn.ampproject.org/bento.js\" crossorigin=\"anonymous\"></script>\n<!-- Include bento-mustache.js to use mustache templates with this component -->\n<script async src=\"https://cdn.ampproject.org/v0/bento-mustache.js\"></script>\n<script type=\"module\" src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.mjs\" crossorigin=\"anonymous\"></script>\n<script nomodule src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.js\" crossorigin=\"anonymous\"></script>\n<link rel=\"stylesheet\" href=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.css\" crossorigin=\"anonymous\">\n```\n\n### Example\n\n```html\n<!DOCTYPE html>\n<html>\n  <head>\n    <script\n      type=\"module\"\n      async\n      src=\"https://cdn.ampproject.org/bento.mjs\"\n    ></script>\n    <script nomodule src=\"https://cdn.ampproject.org/bento.js\"></script>\n    <script async src=\"https://cdn.ampproject.org/v0/bento-mustache.js\"></script>\n    <script\n      type=\"module\"\n      async\n      src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.mjs\"\n    ></script>\n    <script\n      nomodule\n      async\n      src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.js\"\n    ></script>\n    <link\n      rel=\"stylesheet\"\n      type=\"text/css\"\n      href=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.css\"\n    />\n  </head>\n  <body>\n    <bento-date-display\n      datetime=\"2021-09-09T16:02:08.494Z\"\n      displayIn=\"utc\"\n      locale=\"en-GB\"\n    >\n      <template>\n        <div>ISO: {{iso}}; locale: {{localeString}}</div>\n      </template>\n    </bento-date-display>\n  </body>\n</html>\n```\n\n### Interactivity and API usage\n\nThe Bento Date Display component does not have an imperative API. However, the Bento Date Display Web Component will render a mustache-template, provided by the consumer in a `<template>` tag with `type=\"amp-mustache\"`. This template may interpolate date-related parameters. See the [Returned Time Parameters section](#returned-time-parameters) for a full list of all the available parameters.\n\n### Layout and style\n\nEach Bento component has a small CSS library you must include to guarantee proper loading without [content shifts](https://web.dev/cls/). Because of order-based specificity, you must manually ensure that stylesheets are included before any custom styles.\n\n```html\n<link rel=\"stylesheet\" type=\"text/css\" href=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.css\">\n```\n\nAlternatively, you may also make the light-weight pre-upgrade styles available inline:\n\n```html\n<style data-bento-boilerplate>\n  bento-date-display {\n    display: block;\n    overflow: hidden;\n    position: relative;\n  }\n</style>\n```\n\n### Attributes\n\n#### `datetime`\n\nThe `datetime` attribute specifies the date and time in a standard ISO 8601 date\nstring (e.g. 2017-08-02T15:05:05.000Z) or the string `now`. If set to `now`,\n`bento-date-display` will use the time the page loaded to render its template.\n\n#### `timestamp-ms`\n\nThe `timestamp-ms` attribute specifies the date and time using the number of\nmilliseconds since 1970-01-01T0:00:00.000Z\n\n#### `timestamp-seconds`\n\nThe `timestamp-seconds` attribute specifies the date and time using the number\nof seconds since 1970-01-01T0:00:00.000Z\n\n#### `locale` (optional)\n\nAn internationalization language string for each timer unit. The default value\nis `en` (for English). This attribute supports all values that are supported by\nthe user's browser.\n\n#### `display-in` (optional)\n\nIf set to the value `utc`, the `display-in` attribute will convert the given\ndate to UTC.\n\n#### `offset-seconds` (optional)\n\nThe `offset-seconds` attribute specifies an integer number of seconds to shift\nthe given date.\n\n#### `data-options-\\*` (optional)\n\nThe `data-options-*` supports all the options under [Intl.DateTimeFormat.options](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/DateTimeFormat#parameters)\nparameter that specifies the formatting style to use for `localeString` format.\nValid attributes include: `data-options-date-style`, `data-options-time-style`, etc.\n\nNote that if `display-in` attrubute is set to `utc`, the value of\n`data-options-time-zone` will automatically be converted to `UTC`.\n\n### Styling\n\nYou may use the `bento-date-display` element selector to style the Bento Date Display component freely.\n\n---\n\n## Preact/React Component\n\n### Import via npm\n\n```sh\nnpm install @bentoproject/date-display\n```\n\n```javascript\nimport React from 'react';\nimport {BentoDateDisplay} from '@bentoproject/date-display/react';\nimport '@bentoproject/date-display/styles.css';\n\nfunction App() {\n  return (\n    <BentoDateDisplay\n      datetime={dateTime}\n      displayIn={displayIn}\n      locale={locale}\n      render={(date) => (\n        <div>{`ISO: ${date.iso}; locale: ${date.localeString}`}</div>\n      )}\n    />\n  );\n}\n```\n\n### Interactivity and API usage\n\nThe Bento Date Display component does not have an imperative API. However, the Bento Date Display Preact/React component does accept a `render` prop that renders the consumer's template. This `render` prop should be a function which the Bento Date Display Preact/React component can use to render its template. The `render` callback will be provided a variety of date-related parameters for consumers to interpolate in the rendered template. See the [`render` prop section](#render) for more information.\n\n### Layout and style\n\nThe Bento Date Display Preact/React component allows consumers to render their own templates. These templates may use inline styles, `<style>` tags, Preact/React components that import their own stylesheets.\n\n### Props\n\n#### `datetime`\n\nRequired prop. Denotes the date and time as a Date, String, or Number. If String, must be a standard ISO 8601 date string (e.g. 2017-08-02T15:05:05.000Z) or the string `now`. If set to `now`, it will use the time the page loaded to render its template. If Number, must be a POSIX epoch value in milliseconds.\n\n#### `displayIn`\n\nOptional prop that can be either `\"utc\"` or `\"local\"` and defaults to `\"local\"`. This prop indicates what timezone to display the date in. If set to the value `\"utc\"`, the component will convert the given date to UTC.\n\n#### `locale`\n\nAn internationalization language string for each timer unit. The default value is `en` (for English). This prop supports all values that are supported by the user's browser.\n\n#### `localeOptions`\n\nThe `localeOptions` object supports all the options under [Intl.DateTimeFormat.options](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/DateTimeFormat#parameters) parameter that specifies the formatting style to use for `localeString` format.\n\nNote that if the `displayIn` prop is set to `utc`, the value of `localeOptions.timeZone` will automatically be converted to `UTC`.\n\n#### `render`\n\nOptional callback that should render a template. The callback will be provided an object with properties/values related to the date expressed in `datetime`.\n\nBy default, the Bento Date Display component will display the [`localeString` form of the Date](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/toLocaleString) for the given locale and localeOption. See the [Returned Time Parameters section](#returned-time-parameters) for more details on how each property will be displayed.\n\n```typescript\n(dateParams: DateParams) => JSXInternal.Element\ninterface DateParams {\n  day: number;\n  dayName: string;\n  dayNameShort: string;\n  dayPeriod: string;\n  dayTwoDigit: string;\n  hour: number;\n  hour12: number;\n  hour12TwoDigit: string;\n  hourTwoDigit: string;\n  iso: string;\n  localeString: string;\n  minute: number;\n  minuteTwoDigit: string;\n  month: number;\n  monthName: string;\n  monthNameShort: string;\n  monthTwoDigit: string;\n  second: number;\n  secondTwoDigit: string;\n  timeZoneName: string;\n  timeZoneNameShort: string;\n  year: number;\n  yearTwoDi: string;\n}\n```\n\n### Returned Time Parameters\n\nThis table lists the format you can specify in your Mustache template:\n\n| Format            | Meaning                                                       |\n| ----------------- | ------------------------------------------------------------- |\n| day               | 1, 2, ...12, 13, etc.                                         |\n| dayName           | string,                                                       |\n| dayNameShort      | string,                                                       |\n| dayPeriod         | string,                                                       |\n| dayTwoDigit       | 01, 02, 03, ..., 12, 13, etc.                                 |\n| hour              | 0, 1, 2, 3, ..., 12, 13, ..., 22, 23                          |\n| hour12            | 1, 2, 3, ..., 12, 1, 2, ..., 11, 12                           |\n| hour12TwoDigit    | 01, 02, ..., 12, 01, 02, ..., 11, 12                          |\n| hourTwoDigit      | 00, 01, 02, ..., 12, 13, ..., 22, 23                          |\n| iso               | A standard ISO8601 date string e.g. 2019-01-23T15:31:21.213Z, |\n| localeString      | A string with a language sensitive representation.            |\n| minute            | 0, 1, 2, ..., 58, 59                                          |\n| minuteTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| month             | 1, 2, 3, ..., 12                                              |\n| monthName         | Internationalized month name string.                          |\n| monthNameShort    | Internationalized abbreviated month name string.,             |\n| monthTwoDigit     | 01, 02, ..., 11, 12                                           |\n| second            | 0, 1, 2, ..., 58, 59                                          |\n| secondTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| timeZoneName      | Internationalized timezone, like `Pacific Daylight Time`      |\n| timeZoneNameShort | Internationalized timezone, abbreviated, like `PST`           |\n| year              | 0, 1, 2, ..., 1999, 2000, 2001, etc.                          |\n| yearTwoDigit      | 00, 01, 02, ..., 17, 18, 19, ..., 98, 99                      |\n","readmeFilename":"README.md","gitHead":"34fbeda57c3cc9d01ab3c39cf9618342ec840187","bugs":{"url":"https://github.com/ampproject/amphtml/issues"},"_id":"@bentoproject/date-display@1.2206291614.0","_nodeVersion":"16.15.1","_npmVersion":"8.11.0","dist":{"integrity":"sha512-xBu9AWHKG88XssJjYmYiDH3W/MyTWrbJfMBgsgk8LoTKleGjhsVuH//UUh0rOWbZrmfjQVV61e+VECwHdY6gFA==","shasum":"ab777cb55580d0e959ac02f86bd64ecc9468b563","tarball":"https://registry.npmjs.org/@bentoproject/date-display/-/date-display-1.2206291614.0.tgz","fileCount":29,"unpackedSize":677013,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIA7EDfdwguPhD0ZCzozOfuBb4BUr4CqgO4cRWGMbcWYNAiAIBcx1ZhV2uJc+T1C8JkoLH5+On8Yp2gEMGzRt1IqJgg=="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJivcozACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrONQ//U8gPWeH5nKtoaMMUzxAkTKRclEOcqwOvy7ab9Vng5NTnCejr\r\nWdEmK/CTjcfcco0NcWyPmQsy8Nk7vPa0w6dRFEk6Dynn68zsXNc2sEt2EnOF\r\nOyMnscsA4ZIv2oUAcyDdoVPS04SZBN43gh8xYqNUUj19eiRYiVoH5myD40PZ\r\nEXYP/Iv+NqVwL8vndbO+y3XdtjLAMyoWdLcEECUBF+Ce+hcmY8vJ0sSBRBzr\r\n+WKTp2EQhQXi3h6+ikVJrF/S9hjg9lPUQat1DF/fzV/YbGM/BvY5Bd/Qujmz\r\nhehRtvOMb42xeF4vZZqje9tctaVmcUDIPBH8Vv85i4P0pZ4gcfWC/mx5pCLI\r\n/rOAHm5F0vbIThHmuyFd/6xGr8ZNziMfNZ4dnNGGRG69gdkdRVCs2XtVFK0X\r\n2FZ2fXpihJ/W4D5nKSatBiiSSoWEbYUqbsd+MBqkZqZkoePknst8SVouO5lf\r\nLP6aSWvSPL0a5QxazFWCCkeu6bYsijzbELhRQx61ry1s8fGeyAMUsWJ00zqF\r\nr1FlBdUe7CnSAOriPWa1mhQlp/ydJcbBB4hJbOYIV6YKV0TBAAOFS+EMi3hb\r\nw4u1qbeYAzOEbyxa2HeEcKSkl91vKaFI8Zs+kWPXJK4HXDSCmzam4dVyIl2g\r\nmDvjoVnxFfUnt4IIMHoxr08D14T6pA8e/Qc=\r\n=sP65\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"bentoprojectbot","email":"bentobot@amp.dev"},"directories":{},"maintainers":[{"name":"bentoprojectbot","email":"bentobot@amp.dev"},{"name":"kristoferbaxter","email":"kbax@me.com"},{"name":"esth","email":"esther@amp.dev"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/date-display_1.2206291614.0_1656605235356_0.05552786203720528"},"_hasShrinkwrap":false},"1.2207071723.0":{"name":"@bentoproject/date-display","version":"1.2207071723.0","description":"Displays time data that you can render in your page.","author":{"name":"Bento Authors"},"license":"Apache-2.0","main":"./dist/web-component.js","module":"./dist/web-component.module.js","exports":{".":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./web-component":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./preact":{"import":"./dist/component-preact.module.js","require":"./dist/component-preact.js"},"./react":{"import":"./dist/component-react.module.js","require":"./dist/component-react.js"},"./web-component.css":"./dist/web-component.css"},"repository":{"type":"git","url":"git+https://github.com/ampproject/amphtml.git","directory":"extensions/amp-date-display/1.0"},"homepage":"https://github.com/ampproject/amphtml/tree/main/extensions/amp-date-display/1.0","peerDependencies":{"preact":"^10.2.1","react":"^17.0.0"},"dependencies":{"@bentoproject/core":"0.2207071723.0"},"gitHead":"4ab5ca14023804a1af71c15bba775c5805e2085d","bugs":{"url":"https://github.com/ampproject/amphtml/issues"},"_id":"@bentoproject/date-display@1.2207071723.0","_nodeVersion":"16.15.1","_npmVersion":"8.11.0","dist":{"integrity":"sha512-8lSt6KgyGGWLbBTnRCNBnNzfKzcP/dU3VTV+YgrilUFwPgsw8GNS7jriV21E7d04w3tsslgPAiYqZCKE5hrfpQ==","shasum":"cbb2cb83c2dc80d7ff49e370d0f8a52cf8fc0bad","tarball":"https://registry.npmjs.org/@bentoproject/date-display/-/date-display-1.2207071723.0.tgz","fileCount":29,"unpackedSize":677013,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCuo0G7LWgKtY0FKMVkMZH8co9pXrhSK1zoucfkqDLb6gIge95zjpWVUs/dYvZYOCS4AG+eK338CUs5feS+wX9WJwc="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJix+upACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmo3wg//SqDlRcZsvsHJDuVn2MViuJLF1G1fLwrYmul4fOGuQunklSkB\r\nje2RPKBtsw/JqYU6VAUc98F/6wJahdHjbT22TGjHsu/9PCe8kVwiMyGYWQFm\r\nFH0+8HYhprScLHexdw1oldKdMweH2itwP9Xo+4pBOFEKcdEfClJd+4xmGadS\r\nBx6q/rB1gPBdfM7spGcZcf9H4Z7VehM9J+eJU3P1hDBBLB+P0Eih27uLN7EX\r\nEpSuK2fYwDeiNKIkpI8NcmTWIMbZdUE577+DTqSdIlX0BmFD9wNnsqMeA1Kj\r\nfz5bGPKHxtw5xuNoGCO/KX0XOCDsr4z2lvHdOGPUcsZehuOmbfJRJ5AhVCJt\r\nB13bwYfFYsFIW18UN+Fo4nbSgL/Q2rsBxQ8URwO7bwaGKbqxRKqY5T5TH8VB\r\nBSf9fChAChp/1iq9yOXgh5rVU9HKRtOTgS4DabdSlxTfYNWuz/6WjhbLXy3i\r\n9i4utb/dno/ZhazlTomGanb0CMYB20Os4A4Lp7vCAJ2D+6mXxDtplF0MYSLP\r\nqNzNsctzgkOQk/h93E7sIn4wv78QRLLpbCmUdvgudgSFBMEkV0hayvRnVjZ4\r\nmrVlsnUwQ2N7keJ0G46/7ByjjHtcW9owTZhm436jPERNMvlUERn/qw6Sym9Q\r\nKQOkTJjidiDiIt5HAod4ryovmnOx4GPJdos=\r\n=f44Q\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"bentoprojectbot","email":"bentobot@amp.dev"},"directories":{},"maintainers":[{"name":"bentoprojectbot","email":"bentobot@amp.dev"},{"name":"kristoferbaxter","email":"kbax@me.com"},{"name":"esth","email":"esther@amp.dev"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/date-display_1.2207071723.0_1657269161335_0.3151022786481368"},"_hasShrinkwrap":false},"1.2207181727.0":{"name":"@bentoproject/date-display","version":"1.2207181727.0","description":"Displays time data that you can render in your page.","author":{"name":"Bento Authors"},"license":"Apache-2.0","main":"./dist/web-component.js","module":"./dist/web-component.module.js","exports":{".":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./web-component":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./preact":{"import":"./dist/component-preact.module.js","require":"./dist/component-preact.js"},"./react":{"import":"./dist/component-react.module.js","require":"./dist/component-react.js"},"./web-component.css":"./dist/web-component.css"},"repository":{"type":"git","url":"git+https://github.com/ampproject/amphtml.git","directory":"extensions/amp-date-display/1.0"},"homepage":"https://github.com/ampproject/amphtml/tree/main/extensions/amp-date-display/1.0","peerDependencies":{"preact":"^10.2.1","react":"^17.0.0"},"dependencies":{"@bentoproject/core":"0.2207181727.0"},"gitHead":"78802d83c6c9791cd4400e761bf22f9909218a58","bugs":{"url":"https://github.com/ampproject/amphtml/issues"},"_id":"@bentoproject/date-display@1.2207181727.0","_nodeVersion":"16.16.0","_npmVersion":"8.11.0","dist":{"integrity":"sha512-mp3xMYoPUdNGIlwwCAx3Ir6/VfCP3UUOTS/PjYF1W+beAjwNMIiO9d2ddCn1to5OJmPm6WYdnSARS5fBN5MVsg==","shasum":"98f86594f3023050b6aaf4a21fe010b50b9fd41d","tarball":"https://registry.npmjs.org/@bentoproject/date-display/-/date-display-1.2207181727.0.tgz","fileCount":29,"unpackedSize":677013,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDvmgJ5VFNOM927luPfyjVnvEnteBYIRLov/d9ZI7gl5QIgXPZ/c0kWfmS2UkfX3DMk9HmAOAi/GdxCB+LLm8f8jGs="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJi1mprACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpEGBAAmMS5h4y8ek+LV0Ku+RCzPpyB30mw687JEbbCkGz/hgzIe+II\r\njXDWuvDj3guxpX0mz1ntDGCjinCtEseRR+jE0TPGYikouz6vhAP40K80XjPz\r\nPIYeyNTHlsEg7iSKbO1Qb74+F5hmlMzZPdeE8lYz2zLLsTx+V60JqW2ZR7rn\r\n9YQXfp+zV/muLaevnh46ZgJWTx+cnCi3qCGimKKLYHunWMcB9/TXVYDLRNf6\r\nG1psxTkU9c5QBzy5N40bmA7LInwibZx17LhimgknotHeCYNYtNE4s1rMD1UY\r\ncfFTheJ6/N0DWBD3wicwoaGroUvFWh1z0zpD8DLqJMYEV1fi+lSazpTiL5/y\r\nL+F9TUNhtilUdozWDNCIN+ht2OAKYR67Px8HrJNbnLmv4MnFrjzhqMUtV74s\r\nZ4/qzlda6SKsiJXS/8m0iSEfru4BcVqUYfUrkFbbNHp4W/e50QCWeYbuaHXD\r\njfK8KpRUcnuF8eZlwgVGTILti4ps+YBDamVQOvS9m9iV27JN3nuZWudjD1Yf\r\n6z+GwOLArGxNlWv940JjaTV8uDwwcrxk2g0zu/tdk/D971N990+QaPbmgo+J\r\nFKZ2GtiDqy9cXKxJ9wRYkdWMMxeZbfmi0oIzcBXXHik04E8v/SCiy5LgTlr2\r\nMuzGR/8NAgxlkvgvBdnjJaxIW19S75Gropg=\r\n=QJZ/\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"bentoprojectbot","email":"bentobot@amp.dev"},"directories":{},"maintainers":[{"name":"bentoprojectbot","email":"bentobot@amp.dev"},{"name":"kristoferbaxter","email":"kbax@me.com"},{"name":"esth","email":"esther@amp.dev"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/date-display_1.2207181727.0_1658219114827_0.4205797355544505"},"_hasShrinkwrap":false},"1.2207201724.0":{"name":"@bentoproject/date-display","version":"1.2207201724.0","description":"Displays time data that you can render in your page.","author":{"name":"Bento Authors"},"license":"Apache-2.0","main":"./dist/web-component.js","module":"./dist/web-component.module.js","exports":{".":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./web-component":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./preact":{"import":"./dist/component-preact.module.js","require":"./dist/component-preact.js"},"./react":{"import":"./dist/component-react.module.js","require":"./dist/component-react.js"},"./web-component.css":"./dist/web-component.css"},"repository":{"type":"git","url":"git+https://github.com/ampproject/amphtml.git","directory":"extensions/amp-date-display/1.0"},"homepage":"https://github.com/ampproject/amphtml/tree/main/extensions/amp-date-display/1.0","peerDependencies":{"preact":"^10.2.1","react":"^17.0.0"},"dependencies":{"@bentoproject/core":"0.2207201724.0"},"readme":"# Bento Date Display\n\nDisplays time data that you can render in your page. By providing specific [attributes](#attributes) in the Bento Date Display tag, the Bento Date Display extension returns a list of time parameters, which you can pass to [an amp-mustache template](../../amp-mustache/amp-mustache.md) for rendering. Refer to the [list below for each returned time parameter](#returned-time-parameters).\n\n## Web Component\n\nYou must include each Bento component's required CSS library to guarantee proper loading and before adding custom styles. Or use the light-weight pre-upgrade styles available inline. See [Layout and style](#layout-and-style).\n\n### Example: Import via npm\n\nInstall via npm:\n\n```sh\nnpm install @bentoproject/bento-date-display\n```\n\n```javascript\nimport {defineElement as defineBentoDateDisplay} from '@bentoproject/bento-date-display';\ndefineBentoDateDisplay();\n```\n\n### Include via `<script>`\n\n```html\n<script type=\"module\" src=\"https://cdn.ampproject.org/bento.mjs\" crossorigin=\"anonymous\"></script>\n<script nomodule src=\"https://cdn.ampproject.org/bento.js\" crossorigin=\"anonymous\"></script>\n<!-- Include bento-mustache.js to use mustache templates with this component -->\n<script async src=\"https://cdn.ampproject.org/v0/bento-mustache.js\"></script>\n<script type=\"module\" src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.mjs\" crossorigin=\"anonymous\"></script>\n<script nomodule src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.js\" crossorigin=\"anonymous\"></script>\n<link rel=\"stylesheet\" href=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.css\" crossorigin=\"anonymous\">\n```\n\n### Example\n\n```html\n<!DOCTYPE html>\n<html>\n  <head>\n    <script\n      type=\"module\"\n      async\n      src=\"https://cdn.ampproject.org/bento.mjs\"\n    ></script>\n    <script nomodule src=\"https://cdn.ampproject.org/bento.js\"></script>\n    <script async src=\"https://cdn.ampproject.org/v0/bento-mustache.js\"></script>\n    <script\n      type=\"module\"\n      async\n      src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.mjs\"\n    ></script>\n    <script\n      nomodule\n      async\n      src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.js\"\n    ></script>\n    <link\n      rel=\"stylesheet\"\n      type=\"text/css\"\n      href=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.css\"\n    />\n  </head>\n  <body>\n    <bento-date-display\n      datetime=\"2021-09-09T16:02:08.494Z\"\n      displayIn=\"utc\"\n      locale=\"en-GB\"\n    >\n      <template>\n        <div>ISO: {{iso}}; locale: {{localeString}}</div>\n      </template>\n    </bento-date-display>\n  </body>\n</html>\n```\n\n### Interactivity and API usage\n\nThe Bento Date Display component does not have an imperative API. However, the Bento Date Display Web Component will render a mustache-template, provided by the consumer in a `<template>` tag with `type=\"amp-mustache\"`. This template may interpolate date-related parameters. See the [Returned Time Parameters section](#returned-time-parameters) for a full list of all the available parameters.\n\n### Layout and style\n\nEach Bento component has a small CSS library you must include to guarantee proper loading without [content shifts](https://web.dev/cls/). Because of order-based specificity, you must manually ensure that stylesheets are included before any custom styles.\n\n```html\n<link rel=\"stylesheet\" type=\"text/css\" href=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.css\">\n```\n\nAlternatively, you may also make the light-weight pre-upgrade styles available inline:\n\n```html\n<style data-bento-boilerplate>\n  bento-date-display {\n    display: block;\n    overflow: hidden;\n    position: relative;\n  }\n</style>\n```\n\n### Attributes\n\n#### `datetime`\n\nThe `datetime` attribute specifies the date and time in a standard ISO 8601 date\nstring (e.g. 2017-08-02T15:05:05.000Z) or the string `now`. If set to `now`,\n`bento-date-display` will use the time the page loaded to render its template.\n\n#### `timestamp-ms`\n\nThe `timestamp-ms` attribute specifies the date and time using the number of\nmilliseconds since 1970-01-01T0:00:00.000Z\n\n#### `timestamp-seconds`\n\nThe `timestamp-seconds` attribute specifies the date and time using the number\nof seconds since 1970-01-01T0:00:00.000Z\n\n#### `locale` (optional)\n\nAn internationalization language string for each timer unit. The default value\nis `en` (for English). This attribute supports all values that are supported by\nthe user's browser.\n\n#### `display-in` (optional)\n\nIf set to the value `utc`, the `display-in` attribute will convert the given\ndate to UTC.\n\n#### `offset-seconds` (optional)\n\nThe `offset-seconds` attribute specifies an integer number of seconds to shift\nthe given date.\n\n#### `data-options-\\*` (optional)\n\nThe `data-options-*` supports all the options under [Intl.DateTimeFormat.options](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/DateTimeFormat#parameters)\nparameter that specifies the formatting style to use for `localeString` format.\nValid attributes include: `data-options-date-style`, `data-options-time-style`, etc.\n\nNote that if `display-in` attrubute is set to `utc`, the value of\n`data-options-time-zone` will automatically be converted to `UTC`.\n\n### Styling\n\nYou may use the `bento-date-display` element selector to style the Bento Date Display component freely.\n\n---\n\n## Preact/React Component\n\n### Import via npm\n\n```sh\nnpm install @bentoproject/date-display\n```\n\n```javascript\nimport React from 'react';\nimport {BentoDateDisplay} from '@bentoproject/date-display/react';\nimport '@bentoproject/date-display/styles.css';\n\nfunction App() {\n  return (\n    <BentoDateDisplay\n      datetime={dateTime}\n      displayIn={displayIn}\n      locale={locale}\n      render={(date) => (\n        <div>{`ISO: ${date.iso}; locale: ${date.localeString}`}</div>\n      )}\n    />\n  );\n}\n```\n\n### Interactivity and API usage\n\nThe Bento Date Display component does not have an imperative API. However, the Bento Date Display Preact/React component does accept a `render` prop that renders the consumer's template. This `render` prop should be a function which the Bento Date Display Preact/React component can use to render its template. The `render` callback will be provided a variety of date-related parameters for consumers to interpolate in the rendered template. See the [`render` prop section](#render) for more information.\n\n### Layout and style\n\nThe Bento Date Display Preact/React component allows consumers to render their own templates. These templates may use inline styles, `<style>` tags, Preact/React components that import their own stylesheets.\n\n### Props\n\n#### `datetime`\n\nRequired prop. Denotes the date and time as a Date, String, or Number. If String, must be a standard ISO 8601 date string (e.g. 2017-08-02T15:05:05.000Z) or the string `now`. If set to `now`, it will use the time the page loaded to render its template. If Number, must be a POSIX epoch value in milliseconds.\n\n#### `displayIn`\n\nOptional prop that can be either `\"utc\"` or `\"local\"` and defaults to `\"local\"`. This prop indicates what timezone to display the date in. If set to the value `\"utc\"`, the component will convert the given date to UTC.\n\n#### `locale`\n\nAn internationalization language string for each timer unit. The default value is `en` (for English). This prop supports all values that are supported by the user's browser.\n\n#### `localeOptions`\n\nThe `localeOptions` object supports all the options under [Intl.DateTimeFormat.options](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/DateTimeFormat#parameters) parameter that specifies the formatting style to use for `localeString` format.\n\nNote that if the `displayIn` prop is set to `utc`, the value of `localeOptions.timeZone` will automatically be converted to `UTC`.\n\n#### `render`\n\nOptional callback that should render a template. The callback will be provided an object with properties/values related to the date expressed in `datetime`.\n\nBy default, the Bento Date Display component will display the [`localeString` form of the Date](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/toLocaleString) for the given locale and localeOption. See the [Returned Time Parameters section](#returned-time-parameters) for more details on how each property will be displayed.\n\n```typescript\n(dateParams: DateParams) => JSXInternal.Element\ninterface DateParams {\n  day: number;\n  dayName: string;\n  dayNameShort: string;\n  dayPeriod: string;\n  dayTwoDigit: string;\n  hour: number;\n  hour12: number;\n  hour12TwoDigit: string;\n  hourTwoDigit: string;\n  iso: string;\n  localeString: string;\n  minute: number;\n  minuteTwoDigit: string;\n  month: number;\n  monthName: string;\n  monthNameShort: string;\n  monthTwoDigit: string;\n  second: number;\n  secondTwoDigit: string;\n  timeZoneName: string;\n  timeZoneNameShort: string;\n  year: number;\n  yearTwoDi: string;\n}\n```\n\n### Returned Time Parameters\n\nThis table lists the format you can specify in your Mustache template:\n\n| Format            | Meaning                                                       |\n| ----------------- | ------------------------------------------------------------- |\n| day               | 1, 2, ...12, 13, etc.                                         |\n| dayName           | string,                                                       |\n| dayNameShort      | string,                                                       |\n| dayPeriod         | string,                                                       |\n| dayTwoDigit       | 01, 02, 03, ..., 12, 13, etc.                                 |\n| hour              | 0, 1, 2, 3, ..., 12, 13, ..., 22, 23                          |\n| hour12            | 1, 2, 3, ..., 12, 1, 2, ..., 11, 12                           |\n| hour12TwoDigit    | 01, 02, ..., 12, 01, 02, ..., 11, 12                          |\n| hourTwoDigit      | 00, 01, 02, ..., 12, 13, ..., 22, 23                          |\n| iso               | A standard ISO8601 date string e.g. 2019-01-23T15:31:21.213Z, |\n| localeString      | A string with a language sensitive representation.            |\n| minute            | 0, 1, 2, ..., 58, 59                                          |\n| minuteTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| month             | 1, 2, 3, ..., 12                                              |\n| monthName         | Internationalized month name string.                          |\n| monthNameShort    | Internationalized abbreviated month name string.,             |\n| monthTwoDigit     | 01, 02, ..., 11, 12                                           |\n| second            | 0, 1, 2, ..., 58, 59                                          |\n| secondTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| timeZoneName      | Internationalized timezone, like `Pacific Daylight Time`      |\n| timeZoneNameShort | Internationalized timezone, abbreviated, like `PST`           |\n| year              | 0, 1, 2, ..., 1999, 2000, 2001, etc.                          |\n| yearTwoDigit      | 00, 01, 02, ..., 17, 18, 19, ..., 98, 99                      |\n","readmeFilename":"README.md","gitHead":"62d86212e783d34fd2dfa8bd02ffb0e447c0538b","bugs":{"url":"https://github.com/ampproject/amphtml/issues"},"_id":"@bentoproject/date-display@1.2207201724.0","_nodeVersion":"16.16.0","_npmVersion":"8.11.0","dist":{"integrity":"sha512-HI7BJzg2Ywn1fsGrs/KMYJ+gr1mDirr+sRdY1GebTb5x0bDDNgDYjRqyaAKqawDdnrHM6Rzyc0v8EgXOafZSqw==","shasum":"cda4866fc5f4b060bb0aaf381110a8a9e090c87e","tarball":"https://registry.npmjs.org/@bentoproject/date-display/-/date-display-1.2207201724.0.tgz","fileCount":29,"unpackedSize":677013,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIFVyCazLMYABbXWpet70O2Ix2pz9UF+xbhj7zXct4JcEAiEA3gKqAcTLH61gj7gemfjTEWjp9rJ8DaY7Z3J3ytD15BM="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJi2Q2KACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrqKA//aOFl6Kf8nRlFgDPMlNgiMKGANOWs1ijoeGKl8ETOEcxIdqYs\r\nGzxU6b1dOhR+gwocQFYMTGNpfCqnSf64O3kVwKzURbZbcigzypISIjHa05MW\r\ng6IJP5PSX4pTRv8SRz6cpA/qIbOBbKI01wytXf9iIc6b7H0pg9RDbU5SzTii\r\n0jJdEx7G7RCNPZLD20mmaChJ30tOHzjIGjRVLTOTyYgtwaNFFzg/4ShyJGY/\r\n770PQqkpmkAWLsl6ILbH9zygA6AUKEyBtos5XsGB9nOIDUlwM6NMrJ1tDdpV\r\nMAqwi1TCPEwznJjaFS8/WLuxOf5l9K8Lk2x6XT6hsau/z4YKltXTy8Rc1zgc\r\nX7NXqfW95QoY9iEEyX2I5vvKuweRWopgOLo1Zo0ILlo4DfcE04K973eIDHqZ\r\nFC1BGs3YxAYwPWFitBHHH5AjY8K8sLMgBaBa1eYqxQJaQ5nW8081bSTArqE2\r\n5vQyoHqZLsxqXoYkh7cqg8nqGs7dNE9X/pVc7qTxOOi5hlkRGTera1OayLSG\r\nYFn+sjDShv1KcDIJFDuRZmyBXPI4ajm+qHUJzQoYeHGJOwJwocmH5Uh/2ovx\r\nuQPvQLGI2hWc+c72f2RlV2pkBfesgNVDAPhP0vxwLT2x9nkjs9d2VGhhozuO\r\nobL7HtNeiWbBNhU840QQIdSz0nTBElzRgIU=\r\n=Q9pW\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"bentoprojectbot","email":"bentobot@amp.dev"},"directories":{},"maintainers":[{"name":"bentoprojectbot","email":"bentobot@amp.dev"},{"name":"kristoferbaxter","email":"kbax@me.com"},{"name":"esth","email":"esther@amp.dev"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/date-display_1.2207201724.0_1658391945956_0.09826251058442437"},"_hasShrinkwrap":false},"1.2207221643.0":{"name":"@bentoproject/date-display","version":"1.2207221643.0","description":"Displays time data that you can render in your page.","author":{"name":"Bento Authors"},"license":"Apache-2.0","main":"./dist/web-component.js","module":"./dist/web-component.module.js","exports":{".":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./web-component":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./preact":{"import":"./dist/component-preact.module.js","require":"./dist/component-preact.js"},"./react":{"import":"./dist/component-react.module.js","require":"./dist/component-react.js"},"./web-component.css":"./dist/web-component.css"},"repository":{"type":"git","url":"git+https://github.com/ampproject/amphtml.git","directory":"extensions/amp-date-display/1.0"},"homepage":"https://github.com/ampproject/amphtml/tree/main/extensions/amp-date-display/1.0","peerDependencies":{"preact":"^10.2.1","react":"^17.0.0"},"dependencies":{"@bentoproject/core":"0.2207221643.0"},"gitHead":"83270c82c0130eff7988664c86a7482098f9477e","bugs":{"url":"https://github.com/ampproject/amphtml/issues"},"_id":"@bentoproject/date-display@1.2207221643.0","_nodeVersion":"16.16.0","_npmVersion":"8.11.0","dist":{"integrity":"sha512-S/2BPB338eIZywAhlJlqBSS+5qW4JPN/rEnalL9kg5wOHHYWwfJsmIih2QsnrNKm8jOmsIPy37PXTJgxMIYcZw==","shasum":"ebb784199822d48aba47d2ba7a61a6f8d62caead","tarball":"https://registry.npmjs.org/@bentoproject/date-display/-/date-display-1.2207221643.0.tgz","fileCount":29,"unpackedSize":677013,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDZSx1w/h0VfDhoXqsM4/xLnt2zA2dfd13uV8yHi33JSwIgHiQbbtUJY8KngK+aiMViGZlUt20h8zDdL4us5+oi0pA="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJi27CqACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmq7zxAAmGNjjqmrJ9U1CBDbZN4eTAnuA2cQujnNJfud4LUnDFRGPVSG\r\njjonuIqVyOJjC+cnsPzqtbg67ZrEzS0UA7c4hA8rOZlAHYQ8d3Nw2lkLMDuS\r\nu91bosc5KbD2Gvsk1ncB5m73zI3LVSQmmV0+fk7RyPOatKrCm4O6uIeEiXJA\r\ntBltvxKdpLj49VagFwmeB7KaDGukRN0VKXAXtiivAetB668elaCOICNfARhr\r\nIMUdZl2mzeT2iq2ra9HluziZStpcZaO/qYnMNfqIVPeYU65vE7WRQ0E3cEu5\r\nuHAVxLRdwYRWKNMU0e6yb9MOX+6dQMa8DRPwILsKmIPK1KVPJmv6+Na1wc+n\r\nmyU7dOe+MoxqwDCIUfCVzVEGkkbzsgcB2W1OypQiVdD76L8xvFB4/0alNeNZ\r\n1epqM3/h1+MVo8994TyQDy0BefMD+sc5HyNtOZBGSduT073JitbhkQMIATa0\r\nkepYuXyfCtJ7X6w+2B+FzMBCaWZp+bgY+kuwkUJkRxnZIPjGZyPj2/Ym6wMB\r\nrq8mIPFboM7vOeZUNzMT2XxeLY0B6lM6ajyd0bVCd39iTYvSEt1qUXnKYntF\r\nZg6tERMpBjGhZMn6lykiKVwQawa2ihFS1NviI66kNdECY2Tt8tLaOxIx2Qrg\r\njduBQBkb5krS/NAZSLm3EOfAh+03lrL74+E=\r\n=PVO+\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"bentoprojectbot","email":"bentobot@amp.dev"},"directories":{},"maintainers":[{"name":"bentoprojectbot","email":"bentobot@amp.dev"},{"name":"kristoferbaxter","email":"kbax@me.com"},{"name":"esth","email":"esther@amp.dev"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/date-display_1.2207221643.0_1658564778330_0.23880176044619406"},"_hasShrinkwrap":false},"1.2207261725.0":{"name":"@bentoproject/date-display","version":"1.2207261725.0","description":"Displays time data that you can render in your page.","author":{"name":"Bento Authors"},"license":"Apache-2.0","main":"./dist/web-component.js","module":"./dist/web-component.module.js","exports":{".":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./web-component":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./preact":{"import":"./dist/component-preact.module.js","require":"./dist/component-preact.js"},"./react":{"import":"./dist/component-react.module.js","require":"./dist/component-react.js"},"./web-component.css":"./dist/web-component.css"},"repository":{"type":"git","url":"git+https://github.com/ampproject/amphtml.git","directory":"extensions/amp-date-display/1.0"},"homepage":"https://github.com/ampproject/amphtml/tree/main/extensions/amp-date-display/1.0","peerDependencies":{"preact":"^10.2.1","react":"^17.0.0"},"dependencies":{"@bentoproject/core":"0.2207261725.0"},"readme":"# Bento Date Display\n\nDisplays time data that you can render in your page. By providing specific [attributes](#attributes) in the Bento Date Display tag, the Bento Date Display extension returns a list of time parameters, which you can pass to [an amp-mustache template](../../amp-mustache/amp-mustache.md) for rendering. Refer to the [list below for each returned time parameter](#returned-time-parameters).\n\n## Web Component\n\nYou must include each Bento component's required CSS library to guarantee proper loading and before adding custom styles. Or use the light-weight pre-upgrade styles available inline. See [Layout and style](#layout-and-style).\n\n### Example: Import via npm\n\nInstall via npm:\n\n```sh\nnpm install @bentoproject/bento-date-display\n```\n\n```javascript\nimport {defineElement as defineBentoDateDisplay} from '@bentoproject/bento-date-display';\ndefineBentoDateDisplay();\n```\n\n### Include via `<script>`\n\n```html\n<script type=\"module\" src=\"https://cdn.ampproject.org/bento.mjs\" crossorigin=\"anonymous\"></script>\n<script nomodule src=\"https://cdn.ampproject.org/bento.js\" crossorigin=\"anonymous\"></script>\n<!-- Include bento-mustache.js to use mustache templates with this component -->\n<script async src=\"https://cdn.ampproject.org/v0/bento-mustache.js\"></script>\n<script type=\"module\" src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.mjs\" crossorigin=\"anonymous\"></script>\n<script nomodule src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.js\" crossorigin=\"anonymous\"></script>\n<link rel=\"stylesheet\" href=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.css\" crossorigin=\"anonymous\">\n```\n\n### Example\n\n```html\n<!DOCTYPE html>\n<html>\n  <head>\n    <script\n      type=\"module\"\n      async\n      src=\"https://cdn.ampproject.org/bento.mjs\"\n    ></script>\n    <script nomodule src=\"https://cdn.ampproject.org/bento.js\"></script>\n    <script async src=\"https://cdn.ampproject.org/v0/bento-mustache.js\"></script>\n    <script\n      type=\"module\"\n      async\n      src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.mjs\"\n    ></script>\n    <script\n      nomodule\n      async\n      src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.js\"\n    ></script>\n    <link\n      rel=\"stylesheet\"\n      type=\"text/css\"\n      href=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.css\"\n    />\n  </head>\n  <body>\n    <bento-date-display\n      datetime=\"2021-09-09T16:02:08.494Z\"\n      displayIn=\"utc\"\n      locale=\"en-GB\"\n    >\n      <template>\n        <div>ISO: {{iso}}; locale: {{localeString}}</div>\n      </template>\n    </bento-date-display>\n  </body>\n</html>\n```\n\n### Interactivity and API usage\n\nThe Bento Date Display component does not have an imperative API. However, the Bento Date Display Web Component will render a mustache-template, provided by the consumer in a `<template>` tag with `type=\"amp-mustache\"`. This template may interpolate date-related parameters. See the [Returned Time Parameters section](#returned-time-parameters) for a full list of all the available parameters.\n\n### Layout and style\n\nEach Bento component has a small CSS library you must include to guarantee proper loading without [content shifts](https://web.dev/cls/). Because of order-based specificity, you must manually ensure that stylesheets are included before any custom styles.\n\n```html\n<link rel=\"stylesheet\" type=\"text/css\" href=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.css\">\n```\n\nAlternatively, you may also make the light-weight pre-upgrade styles available inline:\n\n```html\n<style data-bento-boilerplate>\n  bento-date-display {\n    display: block;\n    overflow: hidden;\n    position: relative;\n  }\n</style>\n```\n\n### Attributes\n\n#### `datetime`\n\nThe `datetime` attribute specifies the date and time in a standard ISO 8601 date\nstring (e.g. 2017-08-02T15:05:05.000Z) or the string `now`. If set to `now`,\n`bento-date-display` will use the time the page loaded to render its template.\n\n#### `timestamp-ms`\n\nThe `timestamp-ms` attribute specifies the date and time using the number of\nmilliseconds since 1970-01-01T0:00:00.000Z\n\n#### `timestamp-seconds`\n\nThe `timestamp-seconds` attribute specifies the date and time using the number\nof seconds since 1970-01-01T0:00:00.000Z\n\n#### `locale` (optional)\n\nAn internationalization language string for each timer unit. The default value\nis `en` (for English). This attribute supports all values that are supported by\nthe user's browser.\n\n#### `display-in` (optional)\n\nIf set to the value `utc`, the `display-in` attribute will convert the given\ndate to UTC.\n\n#### `offset-seconds` (optional)\n\nThe `offset-seconds` attribute specifies an integer number of seconds to shift\nthe given date.\n\n#### `data-options-\\*` (optional)\n\nThe `data-options-*` supports all the options under [Intl.DateTimeFormat.options](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/DateTimeFormat#parameters)\nparameter that specifies the formatting style to use for `localeString` format.\nValid attributes include: `data-options-date-style`, `data-options-time-style`, etc.\n\nNote that if `display-in` attrubute is set to `utc`, the value of\n`data-options-time-zone` will automatically be converted to `UTC`.\n\n### Styling\n\nYou may use the `bento-date-display` element selector to style the Bento Date Display component freely.\n\n---\n\n## Preact/React Component\n\n### Import via npm\n\n```sh\nnpm install @bentoproject/date-display\n```\n\n```javascript\nimport React from 'react';\nimport {BentoDateDisplay} from '@bentoproject/date-display/react';\nimport '@bentoproject/date-display/styles.css';\n\nfunction App() {\n  return (\n    <BentoDateDisplay\n      datetime={dateTime}\n      displayIn={displayIn}\n      locale={locale}\n      render={(date) => (\n        <div>{`ISO: ${date.iso}; locale: ${date.localeString}`}</div>\n      )}\n    />\n  );\n}\n```\n\n### Interactivity and API usage\n\nThe Bento Date Display component does not have an imperative API. However, the Bento Date Display Preact/React component does accept a `render` prop that renders the consumer's template. This `render` prop should be a function which the Bento Date Display Preact/React component can use to render its template. The `render` callback will be provided a variety of date-related parameters for consumers to interpolate in the rendered template. See the [`render` prop section](#render) for more information.\n\n### Layout and style\n\nThe Bento Date Display Preact/React component allows consumers to render their own templates. These templates may use inline styles, `<style>` tags, Preact/React components that import their own stylesheets.\n\n### Props\n\n#### `datetime`\n\nRequired prop. Denotes the date and time as a Date, String, or Number. If String, must be a standard ISO 8601 date string (e.g. 2017-08-02T15:05:05.000Z) or the string `now`. If set to `now`, it will use the time the page loaded to render its template. If Number, must be a POSIX epoch value in milliseconds.\n\n#### `displayIn`\n\nOptional prop that can be either `\"utc\"` or `\"local\"` and defaults to `\"local\"`. This prop indicates what timezone to display the date in. If set to the value `\"utc\"`, the component will convert the given date to UTC.\n\n#### `locale`\n\nAn internationalization language string for each timer unit. The default value is `en` (for English). This prop supports all values that are supported by the user's browser.\n\n#### `localeOptions`\n\nThe `localeOptions` object supports all the options under [Intl.DateTimeFormat.options](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/DateTimeFormat#parameters) parameter that specifies the formatting style to use for `localeString` format.\n\nNote that if the `displayIn` prop is set to `utc`, the value of `localeOptions.timeZone` will automatically be converted to `UTC`.\n\n#### `render`\n\nOptional callback that should render a template. The callback will be provided an object with properties/values related to the date expressed in `datetime`.\n\nBy default, the Bento Date Display component will display the [`localeString` form of the Date](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/toLocaleString) for the given locale and localeOption. See the [Returned Time Parameters section](#returned-time-parameters) for more details on how each property will be displayed.\n\n```typescript\n(dateParams: DateParams) => JSXInternal.Element\ninterface DateParams {\n  day: number;\n  dayName: string;\n  dayNameShort: string;\n  dayPeriod: string;\n  dayTwoDigit: string;\n  hour: number;\n  hour12: number;\n  hour12TwoDigit: string;\n  hourTwoDigit: string;\n  iso: string;\n  localeString: string;\n  minute: number;\n  minuteTwoDigit: string;\n  month: number;\n  monthName: string;\n  monthNameShort: string;\n  monthTwoDigit: string;\n  second: number;\n  secondTwoDigit: string;\n  timeZoneName: string;\n  timeZoneNameShort: string;\n  year: number;\n  yearTwoDi: string;\n}\n```\n\n### Returned Time Parameters\n\nThis table lists the format you can specify in your Mustache template:\n\n| Format            | Meaning                                                       |\n| ----------------- | ------------------------------------------------------------- |\n| day               | 1, 2, ...12, 13, etc.                                         |\n| dayName           | string,                                                       |\n| dayNameShort      | string,                                                       |\n| dayPeriod         | string,                                                       |\n| dayTwoDigit       | 01, 02, 03, ..., 12, 13, etc.                                 |\n| hour              | 0, 1, 2, 3, ..., 12, 13, ..., 22, 23                          |\n| hour12            | 1, 2, 3, ..., 12, 1, 2, ..., 11, 12                           |\n| hour12TwoDigit    | 01, 02, ..., 12, 01, 02, ..., 11, 12                          |\n| hourTwoDigit      | 00, 01, 02, ..., 12, 13, ..., 22, 23                          |\n| iso               | A standard ISO8601 date string e.g. 2019-01-23T15:31:21.213Z, |\n| localeString      | A string with a language sensitive representation.            |\n| minute            | 0, 1, 2, ..., 58, 59                                          |\n| minuteTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| month             | 1, 2, 3, ..., 12                                              |\n| monthName         | Internationalized month name string.                          |\n| monthNameShort    | Internationalized abbreviated month name string.,             |\n| monthTwoDigit     | 01, 02, ..., 11, 12                                           |\n| second            | 0, 1, 2, ..., 58, 59                                          |\n| secondTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| timeZoneName      | Internationalized timezone, like `Pacific Daylight Time`      |\n| timeZoneNameShort | Internationalized timezone, abbreviated, like `PST`           |\n| year              | 0, 1, 2, ..., 1999, 2000, 2001, etc.                          |\n| yearTwoDigit      | 00, 01, 02, ..., 17, 18, 19, ..., 98, 99                      |\n","readmeFilename":"README.md","gitHead":"b73520d61dc1a279ec10d2a27f58891e2e2d5d93","bugs":{"url":"https://github.com/ampproject/amphtml/issues"},"_id":"@bentoproject/date-display@1.2207261725.0","_nodeVersion":"16.16.0","_npmVersion":"8.11.0","dist":{"integrity":"sha512-hIuqLLno5BLYHbmMta3sslVUwmCEz4MUnREfXAfnsqPwXyEc+cU2U9kVYp9jNvaL9mOaQ7YwIGXWmOHGQNzWhg==","shasum":"5741d1d3f9bef44ef9d069b20979a60f097dd4f0","tarball":"https://registry.npmjs.org/@bentoproject/date-display/-/date-display-1.2207261725.0.tgz","fileCount":29,"unpackedSize":677013,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDn/bFdXjfV5ltAxNWuISc19cd3jyHtmFLSLhCWoyMtlwIgKNXX5Rfl+XM9hX0DqRUNLZjnsbWJHaMvftJHIDAX4Mk="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJi4PZkACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpdhQ/+Nd95B7EtUognfpmm4wgAItUihQFAg+YFu5TXNEgLUQ1Copz9\r\nLryVN880qekNn+d5cvvzg8YuvLWLpKmT9eZ0ioMAzyYjLUUxWRyDMXVyEPj8\r\n5l+f0h0isQo6YbtReRWSjmsW526BYHM02X6RCbISQAM0iFV52M4Dt8YkG21F\r\nw7/OOv2nFm5yOzSSdr+muhRLxNZJn3rtXLP5l6mAwMYFJIul9AkCgpYO3BHw\r\n5xWdJL/WSbv/oTrWTXkiqlIsCynzZWsWy36lVmnSpyXgpF/dV+zAAR/TPUOv\r\nXnAiyOxpfI4LJLQjVqyeoJAdbewOFqQVnpKHadU0bMDZ9F0QZigtq479eyHg\r\nHGvQ7RMRdmwj2r7D1VVsKOTR+90Ao7y145LhtOOfVK3OizJlk6PsxzIIqBuF\r\ncW8Gpo8nEovCzqe7AD57G91lREHxjrc5IIzjOIHOzIGuAi9Ex6JB4FJiznOx\r\nIkQx9bLNqJGTdBVUmID8JXcBHqhWzu/gek3u2Lo1YguAKYLUxGmnd2x+Jd2x\r\no3DEOcm21LpIW8esNQl4Wju3Vbpnb+9GrUUW2IQu5dvDCR78yDLNZG19ox1e\r\nvki7ZUcGY8esMqxK/49WFMqZmRchSzrBS/XHBv7lj2DNt7ec4t8czufVpVlM\r\nUNT6RqzcezgYMKDgjFTakV7LK/a/K74UxEs=\r\n=T+J+\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"bentoprojectbot","email":"bentobot@amp.dev"},"directories":{},"maintainers":[{"name":"bentoprojectbot","email":"bentobot@amp.dev"},{"name":"kristoferbaxter","email":"kbax@me.com"},{"name":"esth","email":"esther@amp.dev"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/date-display_1.2207261725.0_1658910307953_0.9333053351042251"},"_hasShrinkwrap":false},"1.2207281718.0":{"name":"@bentoproject/date-display","version":"1.2207281718.0","description":"Displays time data that you can render in your page.","author":{"name":"Bento Authors"},"license":"Apache-2.0","main":"./dist/web-component.js","module":"./dist/web-component.module.js","exports":{".":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./web-component":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./preact":{"import":"./dist/component-preact.module.js","require":"./dist/component-preact.js"},"./react":{"import":"./dist/component-react.module.js","require":"./dist/component-react.js"},"./web-component.css":"./dist/web-component.css"},"repository":{"type":"git","url":"git+https://github.com/ampproject/amphtml.git","directory":"extensions/amp-date-display/1.0"},"homepage":"https://github.com/ampproject/amphtml/tree/main/extensions/amp-date-display/1.0","peerDependencies":{"preact":"^10.2.1","react":"^17.0.0"},"dependencies":{"@bentoproject/core":"0.2207281718.0"},"readme":"# Bento Date Display\n\nDisplays time data that you can render in your page. By providing specific [attributes](#attributes) in the Bento Date Display tag, the Bento Date Display extension returns a list of time parameters, which you can pass to [an amp-mustache template](../../amp-mustache/amp-mustache.md) for rendering. Refer to the [list below for each returned time parameter](#returned-time-parameters).\n\n## Web Component\n\nYou must include each Bento component's required CSS library to guarantee proper loading and before adding custom styles. Or use the light-weight pre-upgrade styles available inline. See [Layout and style](#layout-and-style).\n\n### Example: Import via npm\n\nInstall via npm:\n\n```sh\nnpm install @bentoproject/bento-date-display\n```\n\n```javascript\nimport {defineElement as defineBentoDateDisplay} from '@bentoproject/bento-date-display';\ndefineBentoDateDisplay();\n```\n\n### Include via `<script>`\n\n```html\n<script type=\"module\" src=\"https://cdn.ampproject.org/bento.mjs\" crossorigin=\"anonymous\"></script>\n<script nomodule src=\"https://cdn.ampproject.org/bento.js\" crossorigin=\"anonymous\"></script>\n<!-- Include bento-mustache.js to use mustache templates with this component -->\n<script async src=\"https://cdn.ampproject.org/v0/bento-mustache.js\"></script>\n<script type=\"module\" src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.mjs\" crossorigin=\"anonymous\"></script>\n<script nomodule src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.js\" crossorigin=\"anonymous\"></script>\n<link rel=\"stylesheet\" href=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.css\" crossorigin=\"anonymous\">\n```\n\n### Example\n\n```html\n<!DOCTYPE html>\n<html>\n  <head>\n    <script\n      type=\"module\"\n      async\n      src=\"https://cdn.ampproject.org/bento.mjs\"\n    ></script>\n    <script nomodule src=\"https://cdn.ampproject.org/bento.js\"></script>\n    <script async src=\"https://cdn.ampproject.org/v0/bento-mustache.js\"></script>\n    <script\n      type=\"module\"\n      async\n      src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.mjs\"\n    ></script>\n    <script\n      nomodule\n      async\n      src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.js\"\n    ></script>\n    <link\n      rel=\"stylesheet\"\n      type=\"text/css\"\n      href=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.css\"\n    />\n  </head>\n  <body>\n    <bento-date-display\n      datetime=\"2021-09-09T16:02:08.494Z\"\n      displayIn=\"utc\"\n      locale=\"en-GB\"\n    >\n      <template>\n        <div>ISO: {{iso}}; locale: {{localeString}}</div>\n      </template>\n    </bento-date-display>\n  </body>\n</html>\n```\n\n### Interactivity and API usage\n\nThe Bento Date Display component does not have an imperative API. However, the Bento Date Display Web Component will render a mustache-template, provided by the consumer in a `<template>` tag with `type=\"amp-mustache\"`. This template may interpolate date-related parameters. See the [Returned Time Parameters section](#returned-time-parameters) for a full list of all the available parameters.\n\n### Layout and style\n\nEach Bento component has a small CSS library you must include to guarantee proper loading without [content shifts](https://web.dev/cls/). Because of order-based specificity, you must manually ensure that stylesheets are included before any custom styles.\n\n```html\n<link rel=\"stylesheet\" type=\"text/css\" href=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.css\">\n```\n\nAlternatively, you may also make the light-weight pre-upgrade styles available inline:\n\n```html\n<style data-bento-boilerplate>\n  bento-date-display {\n    display: block;\n    overflow: hidden;\n    position: relative;\n  }\n</style>\n```\n\n### Attributes\n\n#### `datetime`\n\nThe `datetime` attribute specifies the date and time in a standard ISO 8601 date\nstring (e.g. 2017-08-02T15:05:05.000Z) or the string `now`. If set to `now`,\n`bento-date-display` will use the time the page loaded to render its template.\n\n#### `timestamp-ms`\n\nThe `timestamp-ms` attribute specifies the date and time using the number of\nmilliseconds since 1970-01-01T0:00:00.000Z\n\n#### `timestamp-seconds`\n\nThe `timestamp-seconds` attribute specifies the date and time using the number\nof seconds since 1970-01-01T0:00:00.000Z\n\n#### `locale` (optional)\n\nAn internationalization language string for each timer unit. The default value\nis `en` (for English). This attribute supports all values that are supported by\nthe user's browser.\n\n#### `display-in` (optional)\n\nIf set to the value `utc`, the `display-in` attribute will convert the given\ndate to UTC.\n\n#### `offset-seconds` (optional)\n\nThe `offset-seconds` attribute specifies an integer number of seconds to shift\nthe given date.\n\n#### `data-options-\\*` (optional)\n\nThe `data-options-*` supports all the options under [Intl.DateTimeFormat.options](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/DateTimeFormat#parameters)\nparameter that specifies the formatting style to use for `localeString` format.\nValid attributes include: `data-options-date-style`, `data-options-time-style`, etc.\n\nNote that if `display-in` attrubute is set to `utc`, the value of\n`data-options-time-zone` will automatically be converted to `UTC`.\n\n### Styling\n\nYou may use the `bento-date-display` element selector to style the Bento Date Display component freely.\n\n---\n\n## Preact/React Component\n\n### Import via npm\n\n```sh\nnpm install @bentoproject/date-display\n```\n\n```javascript\nimport React from 'react';\nimport {BentoDateDisplay} from '@bentoproject/date-display/react';\nimport '@bentoproject/date-display/styles.css';\n\nfunction App() {\n  return (\n    <BentoDateDisplay\n      datetime={dateTime}\n      displayIn={displayIn}\n      locale={locale}\n      render={(date) => (\n        <div>{`ISO: ${date.iso}; locale: ${date.localeString}`}</div>\n      )}\n    />\n  );\n}\n```\n\n### Interactivity and API usage\n\nThe Bento Date Display component does not have an imperative API. However, the Bento Date Display Preact/React component does accept a `render` prop that renders the consumer's template. This `render` prop should be a function which the Bento Date Display Preact/React component can use to render its template. The `render` callback will be provided a variety of date-related parameters for consumers to interpolate in the rendered template. See the [`render` prop section](#render) for more information.\n\n### Layout and style\n\nThe Bento Date Display Preact/React component allows consumers to render their own templates. These templates may use inline styles, `<style>` tags, Preact/React components that import their own stylesheets.\n\n### Props\n\n#### `datetime`\n\nRequired prop. Denotes the date and time as a Date, String, or Number. If String, must be a standard ISO 8601 date string (e.g. 2017-08-02T15:05:05.000Z) or the string `now`. If set to `now`, it will use the time the page loaded to render its template. If Number, must be a POSIX epoch value in milliseconds.\n\n#### `displayIn`\n\nOptional prop that can be either `\"utc\"` or `\"local\"` and defaults to `\"local\"`. This prop indicates what timezone to display the date in. If set to the value `\"utc\"`, the component will convert the given date to UTC.\n\n#### `locale`\n\nAn internationalization language string for each timer unit. The default value is `en` (for English). This prop supports all values that are supported by the user's browser.\n\n#### `localeOptions`\n\nThe `localeOptions` object supports all the options under [Intl.DateTimeFormat.options](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/DateTimeFormat#parameters) parameter that specifies the formatting style to use for `localeString` format.\n\nNote that if the `displayIn` prop is set to `utc`, the value of `localeOptions.timeZone` will automatically be converted to `UTC`.\n\n#### `render`\n\nOptional callback that should render a template. The callback will be provided an object with properties/values related to the date expressed in `datetime`.\n\nBy default, the Bento Date Display component will display the [`localeString` form of the Date](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/toLocaleString) for the given locale and localeOption. See the [Returned Time Parameters section](#returned-time-parameters) for more details on how each property will be displayed.\n\n```typescript\n(dateParams: DateParams) => JSXInternal.Element\ninterface DateParams {\n  day: number;\n  dayName: string;\n  dayNameShort: string;\n  dayPeriod: string;\n  dayTwoDigit: string;\n  hour: number;\n  hour12: number;\n  hour12TwoDigit: string;\n  hourTwoDigit: string;\n  iso: string;\n  localeString: string;\n  minute: number;\n  minuteTwoDigit: string;\n  month: number;\n  monthName: string;\n  monthNameShort: string;\n  monthTwoDigit: string;\n  second: number;\n  secondTwoDigit: string;\n  timeZoneName: string;\n  timeZoneNameShort: string;\n  year: number;\n  yearTwoDi: string;\n}\n```\n\n### Returned Time Parameters\n\nThis table lists the format you can specify in your Mustache template:\n\n| Format            | Meaning                                                       |\n| ----------------- | ------------------------------------------------------------- |\n| day               | 1, 2, ...12, 13, etc.                                         |\n| dayName           | string,                                                       |\n| dayNameShort      | string,                                                       |\n| dayPeriod         | string,                                                       |\n| dayTwoDigit       | 01, 02, 03, ..., 12, 13, etc.                                 |\n| hour              | 0, 1, 2, 3, ..., 12, 13, ..., 22, 23                          |\n| hour12            | 1, 2, 3, ..., 12, 1, 2, ..., 11, 12                           |\n| hour12TwoDigit    | 01, 02, ..., 12, 01, 02, ..., 11, 12                          |\n| hourTwoDigit      | 00, 01, 02, ..., 12, 13, ..., 22, 23                          |\n| iso               | A standard ISO8601 date string e.g. 2019-01-23T15:31:21.213Z, |\n| localeString      | A string with a language sensitive representation.            |\n| minute            | 0, 1, 2, ..., 58, 59                                          |\n| minuteTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| month             | 1, 2, 3, ..., 12                                              |\n| monthName         | Internationalized month name string.                          |\n| monthNameShort    | Internationalized abbreviated month name string.,             |\n| monthTwoDigit     | 01, 02, ..., 11, 12                                           |\n| second            | 0, 1, 2, ..., 58, 59                                          |\n| secondTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| timeZoneName      | Internationalized timezone, like `Pacific Daylight Time`      |\n| timeZoneNameShort | Internationalized timezone, abbreviated, like `PST`           |\n| year              | 0, 1, 2, ..., 1999, 2000, 2001, etc.                          |\n| yearTwoDigit      | 00, 01, 02, ..., 17, 18, 19, ..., 98, 99                      |\n","readmeFilename":"README.md","gitHead":"5e3f3eee6148e0ebb57aabc48ef987e9b5528611","bugs":{"url":"https://github.com/ampproject/amphtml/issues"},"_id":"@bentoproject/date-display@1.2207281718.0","_nodeVersion":"16.16.0","_npmVersion":"8.11.0","dist":{"integrity":"sha512-jMhrd0EqOk0WQ4iwdCb9OR+UP1yHidBaE+5CrhI9DSnDlUE673W/sMHF92Qt8bzHTQKY1C1648s56wzr5Itg5Q==","shasum":"555205a71d60b9fabce2beb0723f36cbfb13034a","tarball":"https://registry.npmjs.org/@bentoproject/date-display/-/date-display-1.2207281718.0.tgz","fileCount":29,"unpackedSize":677013,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDtTGxD8RmOlmttO/ha958Fxn+Lx1qrTyjoCsxbf2yp3QIhANPuwK7BxurCfPKFPq1aCIh/GeFU6WMeLpSKqdpMOl+f"}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJi45ofACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpX9Q//UQwNaVOxoQC4c87/X1oOn3rhCL11fjIJbuG7mSJLeA8lhz2Q\r\nqPCWhH/vNFXP7z4wdpvvnJzenDnzpN/rwODBUqA7YL1gOCTM+VvnF9lygDSO\r\nsD6TntEeWRfzg8ff/JnO16D9uGmf7KiU1GKa/e8ATOn+c33vFd+jRsRYEI8B\r\ncILL4McFO/lNezxp/NwhGmi/HTNWtYYxc043kh4z3SIA1n0x9G7x7RfYs6gu\r\nqc+nX4b3BsmV1JC1Ul1EflklBxDntBkLxgT/Cnyc9AtdFG1nIRhTvTvqC8Vk\r\n4b8VhlW8wsY6iYFAN2gjCidwhDu6lWkCKt0lqlwaivmB2BAfEyfdgEcuAqWK\r\n2l6AfEa3ODsFE41NZCvdOrViZovBGEalZwB5xN17iR0TlLN/fPeHXKaVKq8x\r\nVa/G5fsPOOJyiF+C6AvROM3iOBF8ItQAiYaCY7XJGeuvk0uA7E/cRM3syN9W\r\na+JJMA9uQIwkJAjtpBM1zSw6UXj0SfcEihqeQmRpWTcPxJjYCqeb20PDgSwQ\r\nGrKQdgnp/ip0b1tkGBOHte3HdHNoCdXzbJ8f2QZL+4MAUyKsiRvvJmCVJU5Z\r\nCTQTyIhgzUlqyXY07gF6m94kGdWXRvRQpeArc8Mamg2WMbWUdmtaLaMQr85k\r\nUdsHny9XQv08CcXAZ+N1JKLlxUPAIWC2NkQ=\r\n=0eGA\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"bentoprojectbot","email":"bentobot@amp.dev"},"directories":{},"maintainers":[{"name":"bentoprojectbot","email":"bentobot@amp.dev"},{"name":"kristoferbaxter","email":"kbax@me.com"},{"name":"esth","email":"esther@amp.dev"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/date-display_1.2207281718.0_1659083295308_0.9022411546492795"},"_hasShrinkwrap":false},"1.2208021808.0":{"name":"@bentoproject/date-display","version":"1.2208021808.0","description":"Displays time data that you can render in your page.","author":{"name":"Bento Authors"},"license":"Apache-2.0","main":"./dist/web-component.js","module":"./dist/web-component.module.js","exports":{".":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./web-component":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./preact":{"import":"./dist/component-preact.module.js","require":"./dist/component-preact.js"},"./react":{"import":"./dist/component-react.module.js","require":"./dist/component-react.js"},"./web-component.css":"./dist/web-component.css"},"repository":{"type":"git","url":"git+https://github.com/ampproject/amphtml.git","directory":"extensions/amp-date-display/1.0"},"homepage":"https://github.com/ampproject/amphtml/tree/main/extensions/amp-date-display/1.0","peerDependencies":{"preact":"^10.2.1","react":"^17.0.0"},"dependencies":{"@bentoproject/core":"0.2208021808.0"},"readme":"# Bento Date Display\n\nDisplays time data that you can render in your page. By providing specific [attributes](#attributes) in the Bento Date Display tag, the Bento Date Display extension returns a list of time parameters, which you can pass to [an amp-mustache template](../../amp-mustache/amp-mustache.md) for rendering. Refer to the [list below for each returned time parameter](#returned-time-parameters).\n\n## Web Component\n\nYou must include each Bento component's required CSS library to guarantee proper loading and before adding custom styles. Or use the light-weight pre-upgrade styles available inline. See [Layout and style](#layout-and-style).\n\n### Example: Import via npm\n\nInstall via npm:\n\n```sh\nnpm install @bentoproject/bento-date-display\n```\n\n```javascript\nimport {defineElement as defineBentoDateDisplay} from '@bentoproject/bento-date-display';\ndefineBentoDateDisplay();\n```\n\n### Include via `<script>`\n\n```html\n<script type=\"module\" src=\"https://cdn.ampproject.org/bento.mjs\" crossorigin=\"anonymous\"></script>\n<script nomodule src=\"https://cdn.ampproject.org/bento.js\" crossorigin=\"anonymous\"></script>\n<!-- Include bento-mustache.js to use mustache templates with this component -->\n<script async src=\"https://cdn.ampproject.org/v0/bento-mustache.js\"></script>\n<script type=\"module\" src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.mjs\" crossorigin=\"anonymous\"></script>\n<script nomodule src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.js\" crossorigin=\"anonymous\"></script>\n<link rel=\"stylesheet\" href=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.css\" crossorigin=\"anonymous\">\n```\n\n### Example\n\n```html\n<!DOCTYPE html>\n<html>\n  <head>\n    <script\n      type=\"module\"\n      async\n      src=\"https://cdn.ampproject.org/bento.mjs\"\n    ></script>\n    <script nomodule src=\"https://cdn.ampproject.org/bento.js\"></script>\n    <script async src=\"https://cdn.ampproject.org/v0/bento-mustache.js\"></script>\n    <script\n      type=\"module\"\n      async\n      src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.mjs\"\n    ></script>\n    <script\n      nomodule\n      async\n      src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.js\"\n    ></script>\n    <link\n      rel=\"stylesheet\"\n      type=\"text/css\"\n      href=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.css\"\n    />\n  </head>\n  <body>\n    <bento-date-display\n      datetime=\"2021-09-09T16:02:08.494Z\"\n      displayIn=\"utc\"\n      locale=\"en-GB\"\n    >\n      <template>\n        <div>ISO: {{iso}}; locale: {{localeString}}</div>\n      </template>\n    </bento-date-display>\n  </body>\n</html>\n```\n\n### Interactivity and API usage\n\nThe Bento Date Display component does not have an imperative API. However, the Bento Date Display Web Component will render a mustache-template, provided by the consumer in a `<template>` tag with `type=\"amp-mustache\"`. This template may interpolate date-related parameters. See the [Returned Time Parameters section](#returned-time-parameters) for a full list of all the available parameters.\n\n### Layout and style\n\nEach Bento component has a small CSS library you must include to guarantee proper loading without [content shifts](https://web.dev/cls/). Because of order-based specificity, you must manually ensure that stylesheets are included before any custom styles.\n\n```html\n<link rel=\"stylesheet\" type=\"text/css\" href=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.css\">\n```\n\nAlternatively, you may also make the light-weight pre-upgrade styles available inline:\n\n```html\n<style data-bento-boilerplate>\n  bento-date-display {\n    display: block;\n    overflow: hidden;\n    position: relative;\n  }\n</style>\n```\n\n### Attributes\n\n#### `datetime`\n\nThe `datetime` attribute specifies the date and time in a standard ISO 8601 date\nstring (e.g. 2017-08-02T15:05:05.000Z) or the string `now`. If set to `now`,\n`bento-date-display` will use the time the page loaded to render its template.\n\n#### `timestamp-ms`\n\nThe `timestamp-ms` attribute specifies the date and time using the number of\nmilliseconds since 1970-01-01T0:00:00.000Z\n\n#### `timestamp-seconds`\n\nThe `timestamp-seconds` attribute specifies the date and time using the number\nof seconds since 1970-01-01T0:00:00.000Z\n\n#### `locale` (optional)\n\nAn internationalization language string for each timer unit. The default value\nis `en` (for English). This attribute supports all values that are supported by\nthe user's browser.\n\n#### `display-in` (optional)\n\nIf set to the value `utc`, the `display-in` attribute will convert the given\ndate to UTC.\n\n#### `offset-seconds` (optional)\n\nThe `offset-seconds` attribute specifies an integer number of seconds to shift\nthe given date.\n\n#### `data-options-\\*` (optional)\n\nThe `data-options-*` supports all the options under [Intl.DateTimeFormat.options](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/DateTimeFormat#parameters)\nparameter that specifies the formatting style to use for `localeString` format.\nValid attributes include: `data-options-date-style`, `data-options-time-style`, etc.\n\nNote that if `display-in` attrubute is set to `utc`, the value of\n`data-options-time-zone` will automatically be converted to `UTC`.\n\n### Styling\n\nYou may use the `bento-date-display` element selector to style the Bento Date Display component freely.\n\n---\n\n## Preact/React Component\n\n### Import via npm\n\n```sh\nnpm install @bentoproject/date-display\n```\n\n```javascript\nimport React from 'react';\nimport {BentoDateDisplay} from '@bentoproject/date-display/react';\nimport '@bentoproject/date-display/styles.css';\n\nfunction App() {\n  return (\n    <BentoDateDisplay\n      datetime={dateTime}\n      displayIn={displayIn}\n      locale={locale}\n      render={(date) => (\n        <div>{`ISO: ${date.iso}; locale: ${date.localeString}`}</div>\n      )}\n    />\n  );\n}\n```\n\n### Interactivity and API usage\n\nThe Bento Date Display component does not have an imperative API. However, the Bento Date Display Preact/React component does accept a `render` prop that renders the consumer's template. This `render` prop should be a function which the Bento Date Display Preact/React component can use to render its template. The `render` callback will be provided a variety of date-related parameters for consumers to interpolate in the rendered template. See the [`render` prop section](#render) for more information.\n\n### Layout and style\n\nThe Bento Date Display Preact/React component allows consumers to render their own templates. These templates may use inline styles, `<style>` tags, Preact/React components that import their own stylesheets.\n\n### Props\n\n#### `datetime`\n\nRequired prop. Denotes the date and time as a Date, String, or Number. If String, must be a standard ISO 8601 date string (e.g. 2017-08-02T15:05:05.000Z) or the string `now`. If set to `now`, it will use the time the page loaded to render its template. If Number, must be a POSIX epoch value in milliseconds.\n\n#### `displayIn`\n\nOptional prop that can be either `\"utc\"` or `\"local\"` and defaults to `\"local\"`. This prop indicates what timezone to display the date in. If set to the value `\"utc\"`, the component will convert the given date to UTC.\n\n#### `locale`\n\nAn internationalization language string for each timer unit. The default value is `en` (for English). This prop supports all values that are supported by the user's browser.\n\n#### `localeOptions`\n\nThe `localeOptions` object supports all the options under [Intl.DateTimeFormat.options](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/DateTimeFormat#parameters) parameter that specifies the formatting style to use for `localeString` format.\n\nNote that if the `displayIn` prop is set to `utc`, the value of `localeOptions.timeZone` will automatically be converted to `UTC`.\n\n#### `render`\n\nOptional callback that should render a template. The callback will be provided an object with properties/values related to the date expressed in `datetime`.\n\nBy default, the Bento Date Display component will display the [`localeString` form of the Date](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/toLocaleString) for the given locale and localeOption. See the [Returned Time Parameters section](#returned-time-parameters) for more details on how each property will be displayed.\n\n```typescript\n(dateParams: DateParams) => JSXInternal.Element\ninterface DateParams {\n  day: number;\n  dayName: string;\n  dayNameShort: string;\n  dayPeriod: string;\n  dayTwoDigit: string;\n  hour: number;\n  hour12: number;\n  hour12TwoDigit: string;\n  hourTwoDigit: string;\n  iso: string;\n  localeString: string;\n  minute: number;\n  minuteTwoDigit: string;\n  month: number;\n  monthName: string;\n  monthNameShort: string;\n  monthTwoDigit: string;\n  second: number;\n  secondTwoDigit: string;\n  timeZoneName: string;\n  timeZoneNameShort: string;\n  year: number;\n  yearTwoDi: string;\n}\n```\n\n### Returned Time Parameters\n\nThis table lists the format you can specify in your Mustache template:\n\n| Format            | Meaning                                                       |\n| ----------------- | ------------------------------------------------------------- |\n| day               | 1, 2, ...12, 13, etc.                                         |\n| dayName           | string,                                                       |\n| dayNameShort      | string,                                                       |\n| dayPeriod         | string,                                                       |\n| dayTwoDigit       | 01, 02, 03, ..., 12, 13, etc.                                 |\n| hour              | 0, 1, 2, 3, ..., 12, 13, ..., 22, 23                          |\n| hour12            | 1, 2, 3, ..., 12, 1, 2, ..., 11, 12                           |\n| hour12TwoDigit    | 01, 02, ..., 12, 01, 02, ..., 11, 12                          |\n| hourTwoDigit      | 00, 01, 02, ..., 12, 13, ..., 22, 23                          |\n| iso               | A standard ISO8601 date string e.g. 2019-01-23T15:31:21.213Z, |\n| localeString      | A string with a language sensitive representation.            |\n| minute            | 0, 1, 2, ..., 58, 59                                          |\n| minuteTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| month             | 1, 2, 3, ..., 12                                              |\n| monthName         | Internationalized month name string.                          |\n| monthNameShort    | Internationalized abbreviated month name string.,             |\n| monthTwoDigit     | 01, 02, ..., 11, 12                                           |\n| second            | 0, 1, 2, ..., 58, 59                                          |\n| secondTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| timeZoneName      | Internationalized timezone, like `Pacific Daylight Time`      |\n| timeZoneNameShort | Internationalized timezone, abbreviated, like `PST`           |\n| year              | 0, 1, 2, ..., 1999, 2000, 2001, etc.                          |\n| yearTwoDigit      | 00, 01, 02, ..., 17, 18, 19, ..., 98, 99                      |\n","readmeFilename":"README.md","gitHead":"b82b832cae23ff854449af280f1b02f4dfeb99f4","bugs":{"url":"https://github.com/ampproject/amphtml/issues"},"_id":"@bentoproject/date-display@1.2208021808.0","_nodeVersion":"16.16.0","_npmVersion":"8.11.0","dist":{"integrity":"sha512-lGgTvDG0qdSxmjfeMRbxrPLLnEP9McGNF1p9IiYssDUOmqJBhh1lRivvui0u9Yo2z6S6gmUilchwqtsP829htg==","shasum":"8fe90ea97378ba4cb191434c879bfd3dea8de619","tarball":"https://registry.npmjs.org/@bentoproject/date-display/-/date-display-1.2208021808.0.tgz","fileCount":29,"unpackedSize":677013,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIFo89z2V2p7yiRH0+qG9aCewue6tpr9dHqhozxxnq7iqAiEA6FrpIUQH/HNWeQjjKYF58WD1jYcxsIWT+VWwpPMWaww="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJi6jFLACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpesQ/8DeIx8ETu2M9ypcVnPhbL0ShqmxmVPXHOBtXAFEY+HTL17eBy\r\nnneArx2x4H/peJ2vxcj4YzBwHgGzmyJBIaaXmyRcIHPO0HlGDhrP3nzGzKcH\r\nrIcVg8R6P/8BfrFB4qMaqK6QIr6SSOkHuX/BPDn8W2xQNfzjWSHt7qbZFtgv\r\ncFsseyLFyo64aIiXvYgOoiBlkyaU5kLtNs0HYalUqCR/so+GYmQWjqgk1SdK\r\nHcv+F034Lq3MkPESo9atg0qefGmgIOYltjK9fpdwuC4qJNMptMFp2ehDqOGR\r\nN4f9Hk9V/cj4HnDmcor1KEjpGcfBehnH4rAqWM7sAXWoo2k2EDIV2Os8LRlz\r\nGz0UJixGsHHVmhj5wawkBO5lKVI/Xl2g0KMKwyN6aoVlmeNhwvAO+5ymH6G0\r\n+uyCAMCkBJFSfptGDlUZb5P/8qBrXTx6qfQBcQLVvmHbGPdijwDjm1/a3gtU\r\nxczkepNiNe1JHhdHKAZRpHjyYamc+t4klTGIPIFI4+ULuxkAF2NLFTM8DAjr\r\n1V4a+qIZ5cX4cBOiNG2hqDHzC78N8HcwkaNQJsNeaJtr4eUxOAJFicyhAgdn\r\nrhn7krweXkKpypYp6nMbQtdOiPzBfHDXDdoJwzjTHjyIqN/L0E6mkIdFWa5E\r\nUdtbzk3X1A/cp53dgcSyU8UXp9qOvJsb2cw=\r\n=bdrC\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"bentoprojectbot","email":"bentobot@amp.dev"},"directories":{},"maintainers":[{"name":"bentoprojectbot","email":"bentobot@amp.dev"},{"name":"kristoferbaxter","email":"kbax@me.com"},{"name":"esth","email":"esther@amp.dev"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/date-display_1.2208021808.0_1659515211271_0.9803597944393754"},"_hasShrinkwrap":false},"1.2208042017.0":{"name":"@bentoproject/date-display","version":"1.2208042017.0","description":"Displays time data that you can render in your page.","author":{"name":"Bento Authors"},"license":"Apache-2.0","main":"./dist/web-component.js","module":"./dist/web-component.module.js","exports":{".":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./web-component":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./preact":{"import":"./dist/component-preact.module.js","require":"./dist/component-preact.js"},"./react":{"import":"./dist/component-react.module.js","require":"./dist/component-react.js"},"./web-component.css":"./dist/web-component.css"},"repository":{"type":"git","url":"git+https://github.com/ampproject/amphtml.git","directory":"extensions/amp-date-display/1.0"},"homepage":"https://github.com/ampproject/amphtml/tree/main/extensions/amp-date-display/1.0","peerDependencies":{"preact":"^10.2.1","react":"^17.0.0"},"dependencies":{"@bentoproject/core":"0.2208042017.0"},"readme":"# Bento Date Display\n\nDisplays time data that you can render in your page. By providing specific [attributes](#attributes) in the Bento Date Display tag, the Bento Date Display extension returns a list of time parameters, which you can pass to [an amp-mustache template](../../amp-mustache/amp-mustache.md) for rendering. Refer to the [list below for each returned time parameter](#returned-time-parameters).\n\n## Web Component\n\nYou must include each Bento component's required CSS library to guarantee proper loading and before adding custom styles. Or use the light-weight pre-upgrade styles available inline. See [Layout and style](#layout-and-style).\n\n### Example: Import via npm\n\nInstall via npm:\n\n```sh\nnpm install @bentoproject/bento-date-display\n```\n\n```javascript\nimport {defineElement as defineBentoDateDisplay} from '@bentoproject/bento-date-display';\ndefineBentoDateDisplay();\n```\n\n### Include via `<script>`\n\n```html\n<script type=\"module\" src=\"https://cdn.ampproject.org/bento.mjs\" crossorigin=\"anonymous\"></script>\n<script nomodule src=\"https://cdn.ampproject.org/bento.js\" crossorigin=\"anonymous\"></script>\n<!-- Include bento-mustache.js to use mustache templates with this component -->\n<script async src=\"https://cdn.ampproject.org/v0/bento-mustache.js\"></script>\n<script type=\"module\" src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.mjs\" crossorigin=\"anonymous\"></script>\n<script nomodule src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.js\" crossorigin=\"anonymous\"></script>\n<link rel=\"stylesheet\" href=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.css\" crossorigin=\"anonymous\">\n```\n\n### Example\n\n```html\n<!DOCTYPE html>\n<html>\n  <head>\n    <script\n      type=\"module\"\n      async\n      src=\"https://cdn.ampproject.org/bento.mjs\"\n    ></script>\n    <script nomodule src=\"https://cdn.ampproject.org/bento.js\"></script>\n    <script async src=\"https://cdn.ampproject.org/v0/bento-mustache.js\"></script>\n    <script\n      type=\"module\"\n      async\n      src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.mjs\"\n    ></script>\n    <script\n      nomodule\n      async\n      src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.js\"\n    ></script>\n    <link\n      rel=\"stylesheet\"\n      type=\"text/css\"\n      href=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.css\"\n    />\n  </head>\n  <body>\n    <bento-date-display\n      datetime=\"2021-09-09T16:02:08.494Z\"\n      displayIn=\"utc\"\n      locale=\"en-GB\"\n    >\n      <template>\n        <div>ISO: {{iso}}; locale: {{localeString}}</div>\n      </template>\n    </bento-date-display>\n  </body>\n</html>\n```\n\n### Interactivity and API usage\n\nThe Bento Date Display component does not have an imperative API. However, the Bento Date Display Web Component will render a mustache-template, provided by the consumer in a `<template>` tag with `type=\"amp-mustache\"`. This template may interpolate date-related parameters. See the [Returned Time Parameters section](#returned-time-parameters) for a full list of all the available parameters.\n\n### Layout and style\n\nEach Bento component has a small CSS library you must include to guarantee proper loading without [content shifts](https://web.dev/cls/). Because of order-based specificity, you must manually ensure that stylesheets are included before any custom styles.\n\n```html\n<link rel=\"stylesheet\" type=\"text/css\" href=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.css\">\n```\n\nAlternatively, you may also make the light-weight pre-upgrade styles available inline:\n\n```html\n<style data-bento-boilerplate>\n  bento-date-display {\n    display: block;\n    overflow: hidden;\n    position: relative;\n  }\n</style>\n```\n\n### Attributes\n\n#### `datetime`\n\nThe `datetime` attribute specifies the date and time in a standard ISO 8601 date\nstring (e.g. 2017-08-02T15:05:05.000Z) or the string `now`. If set to `now`,\n`bento-date-display` will use the time the page loaded to render its template.\n\n#### `timestamp-ms`\n\nThe `timestamp-ms` attribute specifies the date and time using the number of\nmilliseconds since 1970-01-01T0:00:00.000Z\n\n#### `timestamp-seconds`\n\nThe `timestamp-seconds` attribute specifies the date and time using the number\nof seconds since 1970-01-01T0:00:00.000Z\n\n#### `locale` (optional)\n\nAn internationalization language string for each timer unit. The default value\nis `en` (for English). This attribute supports all values that are supported by\nthe user's browser.\n\n#### `display-in` (optional)\n\nIf set to the value `utc`, the `display-in` attribute will convert the given\ndate to UTC.\n\n#### `offset-seconds` (optional)\n\nThe `offset-seconds` attribute specifies an integer number of seconds to shift\nthe given date.\n\n#### `data-options-\\*` (optional)\n\nThe `data-options-*` supports all the options under [Intl.DateTimeFormat.options](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/DateTimeFormat#parameters)\nparameter that specifies the formatting style to use for `localeString` format.\nValid attributes include: `data-options-date-style`, `data-options-time-style`, etc.\n\nNote that if `display-in` attrubute is set to `utc`, the value of\n`data-options-time-zone` will automatically be converted to `UTC`.\n\n### Styling\n\nYou may use the `bento-date-display` element selector to style the Bento Date Display component freely.\n\n---\n\n## Preact/React Component\n\n### Import via npm\n\n```sh\nnpm install @bentoproject/date-display\n```\n\n```javascript\nimport React from 'react';\nimport {BentoDateDisplay} from '@bentoproject/date-display/react';\nimport '@bentoproject/date-display/styles.css';\n\nfunction App() {\n  return (\n    <BentoDateDisplay\n      datetime={dateTime}\n      displayIn={displayIn}\n      locale={locale}\n      render={(date) => (\n        <div>{`ISO: ${date.iso}; locale: ${date.localeString}`}</div>\n      )}\n    />\n  );\n}\n```\n\n### Interactivity and API usage\n\nThe Bento Date Display component does not have an imperative API. However, the Bento Date Display Preact/React component does accept a `render` prop that renders the consumer's template. This `render` prop should be a function which the Bento Date Display Preact/React component can use to render its template. The `render` callback will be provided a variety of date-related parameters for consumers to interpolate in the rendered template. See the [`render` prop section](#render) for more information.\n\n### Layout and style\n\nThe Bento Date Display Preact/React component allows consumers to render their own templates. These templates may use inline styles, `<style>` tags, Preact/React components that import their own stylesheets.\n\n### Props\n\n#### `datetime`\n\nRequired prop. Denotes the date and time as a Date, String, or Number. If String, must be a standard ISO 8601 date string (e.g. 2017-08-02T15:05:05.000Z) or the string `now`. If set to `now`, it will use the time the page loaded to render its template. If Number, must be a POSIX epoch value in milliseconds.\n\n#### `displayIn`\n\nOptional prop that can be either `\"utc\"` or `\"local\"` and defaults to `\"local\"`. This prop indicates what timezone to display the date in. If set to the value `\"utc\"`, the component will convert the given date to UTC.\n\n#### `locale`\n\nAn internationalization language string for each timer unit. The default value is `en` (for English). This prop supports all values that are supported by the user's browser.\n\n#### `localeOptions`\n\nThe `localeOptions` object supports all the options under [Intl.DateTimeFormat.options](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/DateTimeFormat#parameters) parameter that specifies the formatting style to use for `localeString` format.\n\nNote that if the `displayIn` prop is set to `utc`, the value of `localeOptions.timeZone` will automatically be converted to `UTC`.\n\n#### `render`\n\nOptional callback that should render a template. The callback will be provided an object with properties/values related to the date expressed in `datetime`.\n\nBy default, the Bento Date Display component will display the [`localeString` form of the Date](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/toLocaleString) for the given locale and localeOption. See the [Returned Time Parameters section](#returned-time-parameters) for more details on how each property will be displayed.\n\n```typescript\n(dateParams: DateParams) => JSXInternal.Element\ninterface DateParams {\n  day: number;\n  dayName: string;\n  dayNameShort: string;\n  dayPeriod: string;\n  dayTwoDigit: string;\n  hour: number;\n  hour12: number;\n  hour12TwoDigit: string;\n  hourTwoDigit: string;\n  iso: string;\n  localeString: string;\n  minute: number;\n  minuteTwoDigit: string;\n  month: number;\n  monthName: string;\n  monthNameShort: string;\n  monthTwoDigit: string;\n  second: number;\n  secondTwoDigit: string;\n  timeZoneName: string;\n  timeZoneNameShort: string;\n  year: number;\n  yearTwoDi: string;\n}\n```\n\n### Returned Time Parameters\n\nThis table lists the format you can specify in your Mustache template:\n\n| Format            | Meaning                                                       |\n| ----------------- | ------------------------------------------------------------- |\n| day               | 1, 2, ...12, 13, etc.                                         |\n| dayName           | string,                                                       |\n| dayNameShort      | string,                                                       |\n| dayPeriod         | string,                                                       |\n| dayTwoDigit       | 01, 02, 03, ..., 12, 13, etc.                                 |\n| hour              | 0, 1, 2, 3, ..., 12, 13, ..., 22, 23                          |\n| hour12            | 1, 2, 3, ..., 12, 1, 2, ..., 11, 12                           |\n| hour12TwoDigit    | 01, 02, ..., 12, 01, 02, ..., 11, 12                          |\n| hourTwoDigit      | 00, 01, 02, ..., 12, 13, ..., 22, 23                          |\n| iso               | A standard ISO8601 date string e.g. 2019-01-23T15:31:21.213Z, |\n| localeString      | A string with a language sensitive representation.            |\n| minute            | 0, 1, 2, ..., 58, 59                                          |\n| minuteTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| month             | 1, 2, 3, ..., 12                                              |\n| monthName         | Internationalized month name string.                          |\n| monthNameShort    | Internationalized abbreviated month name string.,             |\n| monthTwoDigit     | 01, 02, ..., 11, 12                                           |\n| second            | 0, 1, 2, ..., 58, 59                                          |\n| secondTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| timeZoneName      | Internationalized timezone, like `Pacific Daylight Time`      |\n| timeZoneNameShort | Internationalized timezone, abbreviated, like `PST`           |\n| year              | 0, 1, 2, ..., 1999, 2000, 2001, etc.                          |\n| yearTwoDigit      | 00, 01, 02, ..., 17, 18, 19, ..., 98, 99                      |\n","readmeFilename":"README.md","gitHead":"598aa15d3922507a106666aca29a90334c7b2c05","bugs":{"url":"https://github.com/ampproject/amphtml/issues"},"_id":"@bentoproject/date-display@1.2208042017.0","_nodeVersion":"16.16.0","_npmVersion":"8.11.0","dist":{"integrity":"sha512-IVgF1RBR9ZyEn1FUdYe7S3kE6sxFuBisc4HiI0GMuFS0XXc/5XndSaS5ez2sb5PSnufw0b5PbrJ3Yc3QipewLQ==","shasum":"bd4b42d0e1cfbcfe377e712666d891cdf088518e","tarball":"https://registry.npmjs.org/@bentoproject/date-display/-/date-display-1.2208042017.0.tgz","fileCount":29,"unpackedSize":677013,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCBT53Kb1OineCdfIse9SRQ9ejduOCx6YRna7yW932rNQIhAO7cDzWZ1PI3tnjXOFaRGh1FGD46Y0Ozcwm8AqfYCc3B"}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJi7NSnACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmodhQ//XiHavP849h1LOzKOSgNJWnayHcL4xh5xDq8erxDpOB02/8kg\r\n1rZ5oZvOcrOrAToWc9DQ2iiTAD00Nk3fQBFyxY4Zu8Qu9wP3oPx9/ZQjutmn\r\nW7SV0caNV+W9Hz1sl6Jl5xrgmlfeAjsKerTAeb0Oa00QtwqCg4kL0rHyoutP\r\n7cjVLT5dKUKHD/kDqxTic8C2R3a9zy+gSAmEOgjS/9n7C8PB0FKTVoXXhUAA\r\nc4YMli8xPrm9adm+lCe6KyswYwEKtinSAGg631ijcn1k+fw5BNrspckv1rt/\r\nMwPoO6di0fQWarAl5FUKVFCIvvFp7MEUSvp1y4qDOEg4aJBvz0HiL7+6aVaz\r\n+ElbYz996XeGyiC8VO01WHAcm82dEYIj4B5JLbKMEagj4WEzK6p5hFNbqisE\r\nB7aNa7WvRSUdHusdlTCE1yDBxUks4HZAuW7aJ3HoCigdN0Y6sK5w0DoNaYj6\r\nYksCuK9r1EVUNnx4pBZ5DzOp1jt89tx5TVUnA5gNzDO0pN/gSpGKw7q823FE\r\nRzhqzEoEFGwaPTZxHrWc9TFIERQcXK7oQQNw+uWrU+MYdbo6FJXQW2TMJieN\r\nfj/0cxp6Ca1q4RsvSposa/0jvXh0QuSvXDJQ7QRmxLScbyBYle1r8g+qfKns\r\nYXpkKRemnaMobPImnH2/+iqpF0pgJqPI/dA=\r\n=9MDo\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"bentoprojectbot","email":"bentobot@amp.dev"},"directories":{},"maintainers":[{"name":"bentoprojectbot","email":"bentobot@amp.dev"},{"name":"kristoferbaxter","email":"kbax@me.com"},{"name":"esth","email":"esther@amp.dev"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/date-display_1.2208042017.0_1659688103554_0.002705720345282714"},"_hasShrinkwrap":false},"1.2208051912.0":{"name":"@bentoproject/date-display","version":"1.2208051912.0","description":"Displays time data that you can render in your page.","author":{"name":"Bento Authors"},"license":"Apache-2.0","main":"./dist/web-component.js","module":"./dist/web-component.module.js","exports":{".":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./web-component":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./preact":{"import":"./dist/component-preact.module.js","require":"./dist/component-preact.js"},"./react":{"import":"./dist/component-react.module.js","require":"./dist/component-react.js"},"./web-component.css":"./dist/web-component.css"},"repository":{"type":"git","url":"git+https://github.com/ampproject/amphtml.git","directory":"extensions/amp-date-display/1.0"},"homepage":"https://github.com/ampproject/amphtml/tree/main/extensions/amp-date-display/1.0","peerDependencies":{"preact":"^10.2.1","react":"^17.0.0"},"dependencies":{"@bentoproject/core":"0.2208051912.0"},"readme":"# Bento Date Display\n\nDisplays time data that you can render in your page. By providing specific [attributes](#attributes) in the Bento Date Display tag, the Bento Date Display extension returns a list of time parameters, which you can pass to [an amp-mustache template](../../amp-mustache/amp-mustache.md) for rendering. Refer to the [list below for each returned time parameter](#returned-time-parameters).\n\n## Web Component\n\nYou must include each Bento component's required CSS library to guarantee proper loading and before adding custom styles. Or use the light-weight pre-upgrade styles available inline. See [Layout and style](#layout-and-style).\n\n### Example: Import via npm\n\nInstall via npm:\n\n```sh\nnpm install @bentoproject/bento-date-display\n```\n\n```javascript\nimport {defineElement as defineBentoDateDisplay} from '@bentoproject/bento-date-display';\ndefineBentoDateDisplay();\n```\n\n### Include via `<script>`\n\n```html\n<script type=\"module\" src=\"https://cdn.ampproject.org/bento.mjs\" crossorigin=\"anonymous\"></script>\n<script nomodule src=\"https://cdn.ampproject.org/bento.js\" crossorigin=\"anonymous\"></script>\n<!-- Include bento-mustache.js to use mustache templates with this component -->\n<script async src=\"https://cdn.ampproject.org/v0/bento-mustache.js\"></script>\n<script type=\"module\" src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.mjs\" crossorigin=\"anonymous\"></script>\n<script nomodule src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.js\" crossorigin=\"anonymous\"></script>\n<link rel=\"stylesheet\" href=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.css\" crossorigin=\"anonymous\">\n```\n\n### Example\n\n```html\n<!DOCTYPE html>\n<html>\n  <head>\n    <script\n      type=\"module\"\n      async\n      src=\"https://cdn.ampproject.org/bento.mjs\"\n    ></script>\n    <script nomodule src=\"https://cdn.ampproject.org/bento.js\"></script>\n    <script async src=\"https://cdn.ampproject.org/v0/bento-mustache.js\"></script>\n    <script\n      type=\"module\"\n      async\n      src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.mjs\"\n    ></script>\n    <script\n      nomodule\n      async\n      src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.js\"\n    ></script>\n    <link\n      rel=\"stylesheet\"\n      type=\"text/css\"\n      href=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.css\"\n    />\n  </head>\n  <body>\n    <bento-date-display\n      datetime=\"2021-09-09T16:02:08.494Z\"\n      displayIn=\"utc\"\n      locale=\"en-GB\"\n    >\n      <template>\n        <div>ISO: {{iso}}; locale: {{localeString}}</div>\n      </template>\n    </bento-date-display>\n  </body>\n</html>\n```\n\n### Interactivity and API usage\n\nThe Bento Date Display component does not have an imperative API. However, the Bento Date Display Web Component will render a mustache-template, provided by the consumer in a `<template>` tag with `type=\"amp-mustache\"`. This template may interpolate date-related parameters. See the [Returned Time Parameters section](#returned-time-parameters) for a full list of all the available parameters.\n\n### Layout and style\n\nEach Bento component has a small CSS library you must include to guarantee proper loading without [content shifts](https://web.dev/cls/). Because of order-based specificity, you must manually ensure that stylesheets are included before any custom styles.\n\n```html\n<link rel=\"stylesheet\" type=\"text/css\" href=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.css\">\n```\n\nAlternatively, you may also make the light-weight pre-upgrade styles available inline:\n\n```html\n<style data-bento-boilerplate>\n  bento-date-display {\n    display: block;\n    overflow: hidden;\n    position: relative;\n  }\n</style>\n```\n\n### Attributes\n\n#### `datetime`\n\nThe `datetime` attribute specifies the date and time in a standard ISO 8601 date\nstring (e.g. 2017-08-02T15:05:05.000Z) or the string `now`. If set to `now`,\n`bento-date-display` will use the time the page loaded to render its template.\n\n#### `timestamp-ms`\n\nThe `timestamp-ms` attribute specifies the date and time using the number of\nmilliseconds since 1970-01-01T0:00:00.000Z\n\n#### `timestamp-seconds`\n\nThe `timestamp-seconds` attribute specifies the date and time using the number\nof seconds since 1970-01-01T0:00:00.000Z\n\n#### `locale` (optional)\n\nAn internationalization language string for each timer unit. The default value\nis `en` (for English). This attribute supports all values that are supported by\nthe user's browser.\n\n#### `display-in` (optional)\n\nIf set to the value `utc`, the `display-in` attribute will convert the given\ndate to UTC.\n\n#### `offset-seconds` (optional)\n\nThe `offset-seconds` attribute specifies an integer number of seconds to shift\nthe given date.\n\n#### `data-options-\\*` (optional)\n\nThe `data-options-*` supports all the options under [Intl.DateTimeFormat.options](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/DateTimeFormat#parameters)\nparameter that specifies the formatting style to use for `localeString` format.\nValid attributes include: `data-options-date-style`, `data-options-time-style`, etc.\n\nNote that if `display-in` attrubute is set to `utc`, the value of\n`data-options-time-zone` will automatically be converted to `UTC`.\n\n### Styling\n\nYou may use the `bento-date-display` element selector to style the Bento Date Display component freely.\n\n---\n\n## Preact/React Component\n\n### Import via npm\n\n```sh\nnpm install @bentoproject/date-display\n```\n\n```javascript\nimport React from 'react';\nimport {BentoDateDisplay} from '@bentoproject/date-display/react';\nimport '@bentoproject/date-display/styles.css';\n\nfunction App() {\n  return (\n    <BentoDateDisplay\n      datetime={dateTime}\n      displayIn={displayIn}\n      locale={locale}\n      render={(date) => (\n        <div>{`ISO: ${date.iso}; locale: ${date.localeString}`}</div>\n      )}\n    />\n  );\n}\n```\n\n### Interactivity and API usage\n\nThe Bento Date Display component does not have an imperative API. However, the Bento Date Display Preact/React component does accept a `render` prop that renders the consumer's template. This `render` prop should be a function which the Bento Date Display Preact/React component can use to render its template. The `render` callback will be provided a variety of date-related parameters for consumers to interpolate in the rendered template. See the [`render` prop section](#render) for more information.\n\n### Layout and style\n\nThe Bento Date Display Preact/React component allows consumers to render their own templates. These templates may use inline styles, `<style>` tags, Preact/React components that import their own stylesheets.\n\n### Props\n\n#### `datetime`\n\nRequired prop. Denotes the date and time as a Date, String, or Number. If String, must be a standard ISO 8601 date string (e.g. 2017-08-02T15:05:05.000Z) or the string `now`. If set to `now`, it will use the time the page loaded to render its template. If Number, must be a POSIX epoch value in milliseconds.\n\n#### `displayIn`\n\nOptional prop that can be either `\"utc\"` or `\"local\"` and defaults to `\"local\"`. This prop indicates what timezone to display the date in. If set to the value `\"utc\"`, the component will convert the given date to UTC.\n\n#### `locale`\n\nAn internationalization language string for each timer unit. The default value is `en` (for English). This prop supports all values that are supported by the user's browser.\n\n#### `localeOptions`\n\nThe `localeOptions` object supports all the options under [Intl.DateTimeFormat.options](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/DateTimeFormat#parameters) parameter that specifies the formatting style to use for `localeString` format.\n\nNote that if the `displayIn` prop is set to `utc`, the value of `localeOptions.timeZone` will automatically be converted to `UTC`.\n\n#### `render`\n\nOptional callback that should render a template. The callback will be provided an object with properties/values related to the date expressed in `datetime`.\n\nBy default, the Bento Date Display component will display the [`localeString` form of the Date](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/toLocaleString) for the given locale and localeOption. See the [Returned Time Parameters section](#returned-time-parameters) for more details on how each property will be displayed.\n\n```typescript\n(dateParams: DateParams) => JSXInternal.Element\ninterface DateParams {\n  day: number;\n  dayName: string;\n  dayNameShort: string;\n  dayPeriod: string;\n  dayTwoDigit: string;\n  hour: number;\n  hour12: number;\n  hour12TwoDigit: string;\n  hourTwoDigit: string;\n  iso: string;\n  localeString: string;\n  minute: number;\n  minuteTwoDigit: string;\n  month: number;\n  monthName: string;\n  monthNameShort: string;\n  monthTwoDigit: string;\n  second: number;\n  secondTwoDigit: string;\n  timeZoneName: string;\n  timeZoneNameShort: string;\n  year: number;\n  yearTwoDi: string;\n}\n```\n\n### Returned Time Parameters\n\nThis table lists the format you can specify in your Mustache template:\n\n| Format            | Meaning                                                       |\n| ----------------- | ------------------------------------------------------------- |\n| day               | 1, 2, ...12, 13, etc.                                         |\n| dayName           | string,                                                       |\n| dayNameShort      | string,                                                       |\n| dayPeriod         | string,                                                       |\n| dayTwoDigit       | 01, 02, 03, ..., 12, 13, etc.                                 |\n| hour              | 0, 1, 2, 3, ..., 12, 13, ..., 22, 23                          |\n| hour12            | 1, 2, 3, ..., 12, 1, 2, ..., 11, 12                           |\n| hour12TwoDigit    | 01, 02, ..., 12, 01, 02, ..., 11, 12                          |\n| hourTwoDigit      | 00, 01, 02, ..., 12, 13, ..., 22, 23                          |\n| iso               | A standard ISO8601 date string e.g. 2019-01-23T15:31:21.213Z, |\n| localeString      | A string with a language sensitive representation.            |\n| minute            | 0, 1, 2, ..., 58, 59                                          |\n| minuteTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| month             | 1, 2, 3, ..., 12                                              |\n| monthName         | Internationalized month name string.                          |\n| monthNameShort    | Internationalized abbreviated month name string.,             |\n| monthTwoDigit     | 01, 02, ..., 11, 12                                           |\n| second            | 0, 1, 2, ..., 58, 59                                          |\n| secondTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| timeZoneName      | Internationalized timezone, like `Pacific Daylight Time`      |\n| timeZoneNameShort | Internationalized timezone, abbreviated, like `PST`           |\n| year              | 0, 1, 2, ..., 1999, 2000, 2001, etc.                          |\n| yearTwoDigit      | 00, 01, 02, ..., 17, 18, 19, ..., 98, 99                      |\n","readmeFilename":"README.md","gitHead":"5f50e49dee3435f3a242126437de7cc8263c2ea8","bugs":{"url":"https://github.com/ampproject/amphtml/issues"},"_id":"@bentoproject/date-display@1.2208051912.0","_nodeVersion":"16.16.0","_npmVersion":"8.11.0","dist":{"integrity":"sha512-6Om7pjk8f41J/M3SsL0rOp/km0Xl6j6RNIrRKSDi2Y5ARYXxclBxJnEUC8lzlSBaZmRsWBV83qmTD1wf1IfYuA==","shasum":"234ba04e36baaa9b26d74e975aaeb189e8154b7c","tarball":"https://registry.npmjs.org/@bentoproject/date-display/-/date-display-1.2208051912.0.tgz","fileCount":29,"unpackedSize":677013,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCeBzXVh1idlF7sh2QDWaBx+O72RK9rw8q7SelnGvPFnQIhAKH57t3hCA2ngxGdXzVy9W12Zq7WsxJNC5TXW6VtUlW5"}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJi7iXTACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmorOhAAhhq30ieh+YTaj4smuqaxSe4KHJkxK8u69leAvs3wztay+7qt\r\nwjzcLw54QDQXk8oKmbazm0H3Ac80sEjg3b7e9yK5L9NrtPXozHjijVFa+HTN\r\ncDsuBxwo3+UwKlzj+OHIgOpY3EEI5xkCBY5GNDyTl3oZScCBQ6V9+1A8k6ks\r\nAp6riK0n0QszMsRIff8NRNvsysvqt10DReq0tSwe/ZIwphciSbkQdexWUPwk\r\nXxhgd1MyWhYlVEn4EoGs8VqhiQ+jugde6itFMnzZg0Vq2EIA+S44OHKmHe9g\r\nOJsFWfZFQ8Y/PaRFzBjALDIRruXGzDPXX++dBK98MOFv5XzJabqEsYVkKM/O\r\nfJauoeT1cZ7d+B+2fxUfzZYuWwCJ/bJ4ums/BRh2OmDJ+EAgdSRJ5f4soLvf\r\n4db4o5p3jxGeU7zAmZ3LTto29RUoXe5J34biCiqPlxU13v2+Uw5+EqDd4EvT\r\nJtM/CfWNSjJ6toav11mzyrkrNbJ/EpuHdBuT/qQdxCNZZ07XEH7UO1jjI2FQ\r\npVkGU1oYyZTJxu8j5ueTm5QBEPQeGFwGwOwwc32REoRa13OZNWQl95+BJM9Z\r\nqZnFzrUMDON3vGOO7hSReMMmfr51R3YXgOQFXXtefZjEiXDZamHAGpaL847q\r\nwaeQbXxrBXAqImeSdAanQE9FNFU1LbYwpmQ=\r\n=1clp\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"bentoprojectbot","email":"bentobot@amp.dev"},"directories":{},"maintainers":[{"name":"bentoprojectbot","email":"bentobot@amp.dev"},{"name":"kristoferbaxter","email":"kbax@me.com"},{"name":"esth","email":"esther@amp.dev"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/date-display_1.2208051912.0_1659774419068_0.0913573143089772"},"_hasShrinkwrap":false},"1.2208081650.0":{"name":"@bentoproject/date-display","version":"1.2208081650.0","description":"Displays time data that you can render in your page.","author":{"name":"Bento Authors"},"license":"Apache-2.0","main":"./dist/web-component.js","module":"./dist/web-component.module.js","exports":{".":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./web-component":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./preact":{"import":"./dist/component-preact.module.js","require":"./dist/component-preact.js"},"./react":{"import":"./dist/component-react.module.js","require":"./dist/component-react.js"},"./web-component.css":"./dist/web-component.css"},"repository":{"type":"git","url":"git+https://github.com/ampproject/amphtml.git","directory":"extensions/amp-date-display/1.0"},"homepage":"https://github.com/ampproject/amphtml/tree/main/extensions/amp-date-display/1.0","peerDependencies":{"preact":"^10.2.1","react":"^17.0.0"},"dependencies":{"@bentoproject/core":"0.2208081650.0"},"readme":"# Bento Date Display\n\nDisplays time data that you can render in your page. By providing specific [attributes](#attributes) in the Bento Date Display tag, the Bento Date Display extension returns a list of time parameters, which you can pass to [an amp-mustache template](../../amp-mustache/amp-mustache.md) for rendering. Refer to the [list below for each returned time parameter](#returned-time-parameters).\n\n## Web Component\n\nYou must include each Bento component's required CSS library to guarantee proper loading and before adding custom styles. Or use the light-weight pre-upgrade styles available inline. See [Layout and style](#layout-and-style).\n\n### Example: Import via npm\n\nInstall via npm:\n\n```sh\nnpm install @bentoproject/bento-date-display\n```\n\n```javascript\nimport {defineElement as defineBentoDateDisplay} from '@bentoproject/bento-date-display';\ndefineBentoDateDisplay();\n```\n\n### Include via `<script>`\n\n```html\n<script type=\"module\" src=\"https://cdn.ampproject.org/bento.mjs\" crossorigin=\"anonymous\"></script>\n<script nomodule src=\"https://cdn.ampproject.org/bento.js\" crossorigin=\"anonymous\"></script>\n<!-- Include bento-mustache.js to use mustache templates with this component -->\n<script async src=\"https://cdn.ampproject.org/v0/bento-mustache.js\"></script>\n<script type=\"module\" src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.mjs\" crossorigin=\"anonymous\"></script>\n<script nomodule src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.js\" crossorigin=\"anonymous\"></script>\n<link rel=\"stylesheet\" href=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.css\" crossorigin=\"anonymous\">\n```\n\n### Example\n\n```html\n<!DOCTYPE html>\n<html>\n  <head>\n    <script\n      type=\"module\"\n      async\n      src=\"https://cdn.ampproject.org/bento.mjs\"\n    ></script>\n    <script nomodule src=\"https://cdn.ampproject.org/bento.js\"></script>\n    <script async src=\"https://cdn.ampproject.org/v0/bento-mustache.js\"></script>\n    <script\n      type=\"module\"\n      async\n      src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.mjs\"\n    ></script>\n    <script\n      nomodule\n      async\n      src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.js\"\n    ></script>\n    <link\n      rel=\"stylesheet\"\n      type=\"text/css\"\n      href=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.css\"\n    />\n  </head>\n  <body>\n    <bento-date-display\n      datetime=\"2021-09-09T16:02:08.494Z\"\n      displayIn=\"utc\"\n      locale=\"en-GB\"\n    >\n      <template>\n        <div>ISO: {{iso}}; locale: {{localeString}}</div>\n      </template>\n    </bento-date-display>\n  </body>\n</html>\n```\n\n### Interactivity and API usage\n\nThe Bento Date Display component does not have an imperative API. However, the Bento Date Display Web Component will render a mustache-template, provided by the consumer in a `<template>` tag with `type=\"amp-mustache\"`. This template may interpolate date-related parameters. See the [Returned Time Parameters section](#returned-time-parameters) for a full list of all the available parameters.\n\n### Layout and style\n\nEach Bento component has a small CSS library you must include to guarantee proper loading without [content shifts](https://web.dev/cls/). Because of order-based specificity, you must manually ensure that stylesheets are included before any custom styles.\n\n```html\n<link rel=\"stylesheet\" type=\"text/css\" href=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.css\">\n```\n\nAlternatively, you may also make the light-weight pre-upgrade styles available inline:\n\n```html\n<style data-bento-boilerplate>\n  bento-date-display {\n    display: block;\n    overflow: hidden;\n    position: relative;\n  }\n</style>\n```\n\n### Attributes\n\n#### `datetime`\n\nThe `datetime` attribute specifies the date and time in a standard ISO 8601 date\nstring (e.g. 2017-08-02T15:05:05.000Z) or the string `now`. If set to `now`,\n`bento-date-display` will use the time the page loaded to render its template.\n\n#### `timestamp-ms`\n\nThe `timestamp-ms` attribute specifies the date and time using the number of\nmilliseconds since 1970-01-01T0:00:00.000Z\n\n#### `timestamp-seconds`\n\nThe `timestamp-seconds` attribute specifies the date and time using the number\nof seconds since 1970-01-01T0:00:00.000Z\n\n#### `locale` (optional)\n\nAn internationalization language string for each timer unit. The default value\nis `en` (for English). This attribute supports all values that are supported by\nthe user's browser.\n\n#### `display-in` (optional)\n\nIf set to the value `utc`, the `display-in` attribute will convert the given\ndate to UTC.\n\n#### `offset-seconds` (optional)\n\nThe `offset-seconds` attribute specifies an integer number of seconds to shift\nthe given date.\n\n#### `data-options-\\*` (optional)\n\nThe `data-options-*` supports all the options under [Intl.DateTimeFormat.options](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/DateTimeFormat#parameters)\nparameter that specifies the formatting style to use for `localeString` format.\nValid attributes include: `data-options-date-style`, `data-options-time-style`, etc.\n\nNote that if `display-in` attrubute is set to `utc`, the value of\n`data-options-time-zone` will automatically be converted to `UTC`.\n\n### Styling\n\nYou may use the `bento-date-display` element selector to style the Bento Date Display component freely.\n\n---\n\n## Preact/React Component\n\n### Import via npm\n\n```sh\nnpm install @bentoproject/date-display\n```\n\n```javascript\nimport React from 'react';\nimport {BentoDateDisplay} from '@bentoproject/date-display/react';\nimport '@bentoproject/date-display/styles.css';\n\nfunction App() {\n  return (\n    <BentoDateDisplay\n      datetime={dateTime}\n      displayIn={displayIn}\n      locale={locale}\n      render={(date) => (\n        <div>{`ISO: ${date.iso}; locale: ${date.localeString}`}</div>\n      )}\n    />\n  );\n}\n```\n\n### Interactivity and API usage\n\nThe Bento Date Display component does not have an imperative API. However, the Bento Date Display Preact/React component does accept a `render` prop that renders the consumer's template. This `render` prop should be a function which the Bento Date Display Preact/React component can use to render its template. The `render` callback will be provided a variety of date-related parameters for consumers to interpolate in the rendered template. See the [`render` prop section](#render) for more information.\n\n### Layout and style\n\nThe Bento Date Display Preact/React component allows consumers to render their own templates. These templates may use inline styles, `<style>` tags, Preact/React components that import their own stylesheets.\n\n### Props\n\n#### `datetime`\n\nRequired prop. Denotes the date and time as a Date, String, or Number. If String, must be a standard ISO 8601 date string (e.g. 2017-08-02T15:05:05.000Z) or the string `now`. If set to `now`, it will use the time the page loaded to render its template. If Number, must be a POSIX epoch value in milliseconds.\n\n#### `displayIn`\n\nOptional prop that can be either `\"utc\"` or `\"local\"` and defaults to `\"local\"`. This prop indicates what timezone to display the date in. If set to the value `\"utc\"`, the component will convert the given date to UTC.\n\n#### `locale`\n\nAn internationalization language string for each timer unit. The default value is `en` (for English). This prop supports all values that are supported by the user's browser.\n\n#### `localeOptions`\n\nThe `localeOptions` object supports all the options under [Intl.DateTimeFormat.options](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/DateTimeFormat#parameters) parameter that specifies the formatting style to use for `localeString` format.\n\nNote that if the `displayIn` prop is set to `utc`, the value of `localeOptions.timeZone` will automatically be converted to `UTC`.\n\n#### `render`\n\nOptional callback that should render a template. The callback will be provided an object with properties/values related to the date expressed in `datetime`.\n\nBy default, the Bento Date Display component will display the [`localeString` form of the Date](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/toLocaleString) for the given locale and localeOption. See the [Returned Time Parameters section](#returned-time-parameters) for more details on how each property will be displayed.\n\n```typescript\n(dateParams: DateParams) => JSXInternal.Element\ninterface DateParams {\n  day: number;\n  dayName: string;\n  dayNameShort: string;\n  dayPeriod: string;\n  dayTwoDigit: string;\n  hour: number;\n  hour12: number;\n  hour12TwoDigit: string;\n  hourTwoDigit: string;\n  iso: string;\n  localeString: string;\n  minute: number;\n  minuteTwoDigit: string;\n  month: number;\n  monthName: string;\n  monthNameShort: string;\n  monthTwoDigit: string;\n  second: number;\n  secondTwoDigit: string;\n  timeZoneName: string;\n  timeZoneNameShort: string;\n  year: number;\n  yearTwoDi: string;\n}\n```\n\n### Returned Time Parameters\n\nThis table lists the format you can specify in your Mustache template:\n\n| Format            | Meaning                                                       |\n| ----------------- | ------------------------------------------------------------- |\n| day               | 1, 2, ...12, 13, etc.                                         |\n| dayName           | string,                                                       |\n| dayNameShort      | string,                                                       |\n| dayPeriod         | string,                                                       |\n| dayTwoDigit       | 01, 02, 03, ..., 12, 13, etc.                                 |\n| hour              | 0, 1, 2, 3, ..., 12, 13, ..., 22, 23                          |\n| hour12            | 1, 2, 3, ..., 12, 1, 2, ..., 11, 12                           |\n| hour12TwoDigit    | 01, 02, ..., 12, 01, 02, ..., 11, 12                          |\n| hourTwoDigit      | 00, 01, 02, ..., 12, 13, ..., 22, 23                          |\n| iso               | A standard ISO8601 date string e.g. 2019-01-23T15:31:21.213Z, |\n| localeString      | A string with a language sensitive representation.            |\n| minute            | 0, 1, 2, ..., 58, 59                                          |\n| minuteTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| month             | 1, 2, 3, ..., 12                                              |\n| monthName         | Internationalized month name string.                          |\n| monthNameShort    | Internationalized abbreviated month name string.,             |\n| monthTwoDigit     | 01, 02, ..., 11, 12                                           |\n| second            | 0, 1, 2, ..., 58, 59                                          |\n| secondTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| timeZoneName      | Internationalized timezone, like `Pacific Daylight Time`      |\n| timeZoneNameShort | Internationalized timezone, abbreviated, like `PST`           |\n| year              | 0, 1, 2, ..., 1999, 2000, 2001, etc.                          |\n| yearTwoDigit      | 00, 01, 02, ..., 17, 18, 19, ..., 98, 99                      |\n","readmeFilename":"README.md","gitHead":"beb9a33429ef933995a664a1aa534cf7ac0984f5","bugs":{"url":"https://github.com/ampproject/amphtml/issues"},"_id":"@bentoproject/date-display@1.2208081650.0","_nodeVersion":"16.16.0","_npmVersion":"8.11.0","dist":{"integrity":"sha512-fCiQwPQ12w5+Jrrb9bb4j+VDmtCaPXxtPVQdH4GySWXbWWAUtWNYjl53v/IR6I6SD0zt0wVK391Oo1K/a/ASkA==","shasum":"be11641b45716f12831f3d7ba35670aac3f97010","tarball":"https://registry.npmjs.org/@bentoproject/date-display/-/date-display-1.2208081650.0.tgz","fileCount":29,"unpackedSize":677013,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDYH2lcVVDFiIWqHVK5uPZgKBYBneaJ9oPxEdZ7YTZsXAIgePdnd7zR/Lhq3G41OPDFYFswMwuZ2nOhbJ1Bchwh//w="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJi8ho8ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmoolg//Qll0vyCRGpTDZ19Rrct6lu0cU569d0dkM2hOtQbNypCSRHG6\r\n1/H6P+BhLMZdtRPD0rFiGN1WrhzBuIlVNNlGJN3wuyMH2lvFScAD4RDqbquN\r\n7XJBMpOmIldTcEygZpJFBuifcXRJ+3JwEVQwACF91zTJkeGe3pn13KqkF3Vx\r\nfjP8uM+gG+Z8dIhqKEzPGT36ePYN71f0gCw+nNGp9M0Q7N9gK/fcrO4CZClB\r\nw+POWG8dirOmqAXf2GRWzx2F3XUmJY8tFGunX7M0qZJG1rvSakuWfOpZwh67\r\nKpy/J/sCipmMW1XVU7s2iV5DERRfbzr9e1k2cOkP/gqRYh5oAF4zWbHqE3uC\r\nV1oHAxdfVsiTP0QDrV/RbuKAL5rN0aJfAlFgRJSpPHrfKse95gIwj+cikYUz\r\nmNy7DRklZaggIQkURCjVfEi80O8U178A0OS5ohSE1rPuRns5Vo6gSPHEutCp\r\n8SQdC5u9ouyG0eaRpK+QcgDtiZIbGqUYY4DajCnFS26qSNHSmOTXws/wIxhK\r\n9QIWLLciiWBcCKnscRPrhrT9VAcXuryyUeapmqVNW7oopfWWpd0YMXHLfEW5\r\nBDR9OAtPfbzJ3/kjOEmnPTl5mWRXzHMyzZ9zEDqrdyslFN8BypIij+5tynnO\r\nk1Ui1t7qER8HnIZMtElQxkbk0mw+jJJnhxE=\r\n=i6Dz\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"bentoprojectbot","email":"bentobot@amp.dev"},"directories":{},"maintainers":[{"name":"bentoprojectbot","email":"bentobot@amp.dev"},{"name":"kristoferbaxter","email":"kbax@me.com"},{"name":"esth","email":"esther@amp.dev"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/date-display_1.2208081650.0_1660033595807_0.27985229964502456"},"_hasShrinkwrap":false},"1.2208092047.0":{"name":"@bentoproject/date-display","version":"1.2208092047.0","description":"Displays time data that you can render in your page.","author":{"name":"Bento Authors"},"license":"Apache-2.0","main":"./dist/web-component.js","module":"./dist/web-component.module.js","exports":{".":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./web-component":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./preact":{"import":"./dist/component-preact.module.js","require":"./dist/component-preact.js"},"./react":{"import":"./dist/component-react.module.js","require":"./dist/component-react.js"},"./web-component.css":"./dist/web-component.css"},"repository":{"type":"git","url":"git+https://github.com/ampproject/amphtml.git","directory":"extensions/amp-date-display/1.0"},"homepage":"https://github.com/ampproject/amphtml/tree/main/extensions/amp-date-display/1.0","peerDependencies":{"preact":"^10.2.1","react":"^17.0.0"},"dependencies":{"@bentoproject/core":"0.2208092047.0"},"readme":"# Bento Date Display\n\nDisplays time data that you can render in your page. By providing specific [attributes](#attributes) in the Bento Date Display tag, the Bento Date Display extension returns a list of time parameters, which you can pass to [an amp-mustache template](../../amp-mustache/amp-mustache.md) for rendering. Refer to the [list below for each returned time parameter](#returned-time-parameters).\n\n## Web Component\n\nYou must include each Bento component's required CSS library to guarantee proper loading and before adding custom styles. Or use the light-weight pre-upgrade styles available inline. See [Layout and style](#layout-and-style).\n\n### Example: Import via npm\n\nInstall via npm:\n\n```sh\nnpm install @bentoproject/bento-date-display\n```\n\n```javascript\nimport {defineElement as defineBentoDateDisplay} from '@bentoproject/bento-date-display';\ndefineBentoDateDisplay();\n```\n\n### Include via `<script>`\n\n```html\n<script type=\"module\" src=\"https://cdn.ampproject.org/bento.mjs\" crossorigin=\"anonymous\"></script>\n<script nomodule src=\"https://cdn.ampproject.org/bento.js\" crossorigin=\"anonymous\"></script>\n<!-- Include bento-mustache.js to use mustache templates with this component -->\n<script async src=\"https://cdn.ampproject.org/v0/bento-mustache.js\"></script>\n<script type=\"module\" src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.mjs\" crossorigin=\"anonymous\"></script>\n<script nomodule src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.js\" crossorigin=\"anonymous\"></script>\n<link rel=\"stylesheet\" href=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.css\" crossorigin=\"anonymous\">\n```\n\n### Example\n\n```html\n<!DOCTYPE html>\n<html>\n  <head>\n    <script\n      type=\"module\"\n      async\n      src=\"https://cdn.ampproject.org/bento.mjs\"\n    ></script>\n    <script nomodule src=\"https://cdn.ampproject.org/bento.js\"></script>\n    <script async src=\"https://cdn.ampproject.org/v0/bento-mustache.js\"></script>\n    <script\n      type=\"module\"\n      async\n      src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.mjs\"\n    ></script>\n    <script\n      nomodule\n      async\n      src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.js\"\n    ></script>\n    <link\n      rel=\"stylesheet\"\n      type=\"text/css\"\n      href=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.css\"\n    />\n  </head>\n  <body>\n    <bento-date-display\n      datetime=\"2021-09-09T16:02:08.494Z\"\n      displayIn=\"utc\"\n      locale=\"en-GB\"\n    >\n      <template>\n        <div>ISO: {{iso}}; locale: {{localeString}}</div>\n      </template>\n    </bento-date-display>\n  </body>\n</html>\n```\n\n### Interactivity and API usage\n\nThe Bento Date Display component does not have an imperative API. However, the Bento Date Display Web Component will render a mustache-template, provided by the consumer in a `<template>` tag with `type=\"amp-mustache\"`. This template may interpolate date-related parameters. See the [Returned Time Parameters section](#returned-time-parameters) for a full list of all the available parameters.\n\n### Layout and style\n\nEach Bento component has a small CSS library you must include to guarantee proper loading without [content shifts](https://web.dev/cls/). Because of order-based specificity, you must manually ensure that stylesheets are included before any custom styles.\n\n```html\n<link rel=\"stylesheet\" type=\"text/css\" href=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.css\">\n```\n\nAlternatively, you may also make the light-weight pre-upgrade styles available inline:\n\n```html\n<style data-bento-boilerplate>\n  bento-date-display {\n    display: block;\n    overflow: hidden;\n    position: relative;\n  }\n</style>\n```\n\n### Attributes\n\n#### `datetime`\n\nThe `datetime` attribute specifies the date and time in a standard ISO 8601 date\nstring (e.g. 2017-08-02T15:05:05.000Z) or the string `now`. If set to `now`,\n`bento-date-display` will use the time the page loaded to render its template.\n\n#### `timestamp-ms`\n\nThe `timestamp-ms` attribute specifies the date and time using the number of\nmilliseconds since 1970-01-01T0:00:00.000Z\n\n#### `timestamp-seconds`\n\nThe `timestamp-seconds` attribute specifies the date and time using the number\nof seconds since 1970-01-01T0:00:00.000Z\n\n#### `locale` (optional)\n\nAn internationalization language string for each timer unit. The default value\nis `en` (for English). This attribute supports all values that are supported by\nthe user's browser.\n\n#### `display-in` (optional)\n\nIf set to the value `utc`, the `display-in` attribute will convert the given\ndate to UTC.\n\n#### `offset-seconds` (optional)\n\nThe `offset-seconds` attribute specifies an integer number of seconds to shift\nthe given date.\n\n#### `data-options-\\*` (optional)\n\nThe `data-options-*` supports all the options under [Intl.DateTimeFormat.options](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/DateTimeFormat#parameters)\nparameter that specifies the formatting style to use for `localeString` format.\nValid attributes include: `data-options-date-style`, `data-options-time-style`, etc.\n\nNote that if `display-in` attrubute is set to `utc`, the value of\n`data-options-time-zone` will automatically be converted to `UTC`.\n\n### Styling\n\nYou may use the `bento-date-display` element selector to style the Bento Date Display component freely.\n\n---\n\n## Preact/React Component\n\n### Import via npm\n\n```sh\nnpm install @bentoproject/date-display\n```\n\n```javascript\nimport React from 'react';\nimport {BentoDateDisplay} from '@bentoproject/date-display/react';\nimport '@bentoproject/date-display/styles.css';\n\nfunction App() {\n  return (\n    <BentoDateDisplay\n      datetime={dateTime}\n      displayIn={displayIn}\n      locale={locale}\n      render={(date) => (\n        <div>{`ISO: ${date.iso}; locale: ${date.localeString}`}</div>\n      )}\n    />\n  );\n}\n```\n\n### Interactivity and API usage\n\nThe Bento Date Display component does not have an imperative API. However, the Bento Date Display Preact/React component does accept a `render` prop that renders the consumer's template. This `render` prop should be a function which the Bento Date Display Preact/React component can use to render its template. The `render` callback will be provided a variety of date-related parameters for consumers to interpolate in the rendered template. See the [`render` prop section](#render) for more information.\n\n### Layout and style\n\nThe Bento Date Display Preact/React component allows consumers to render their own templates. These templates may use inline styles, `<style>` tags, Preact/React components that import their own stylesheets.\n\n### Props\n\n#### `datetime`\n\nRequired prop. Denotes the date and time as a Date, String, or Number. If String, must be a standard ISO 8601 date string (e.g. 2017-08-02T15:05:05.000Z) or the string `now`. If set to `now`, it will use the time the page loaded to render its template. If Number, must be a POSIX epoch value in milliseconds.\n\n#### `displayIn`\n\nOptional prop that can be either `\"utc\"` or `\"local\"` and defaults to `\"local\"`. This prop indicates what timezone to display the date in. If set to the value `\"utc\"`, the component will convert the given date to UTC.\n\n#### `locale`\n\nAn internationalization language string for each timer unit. The default value is `en` (for English). This prop supports all values that are supported by the user's browser.\n\n#### `localeOptions`\n\nThe `localeOptions` object supports all the options under [Intl.DateTimeFormat.options](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/DateTimeFormat#parameters) parameter that specifies the formatting style to use for `localeString` format.\n\nNote that if the `displayIn` prop is set to `utc`, the value of `localeOptions.timeZone` will automatically be converted to `UTC`.\n\n#### `render`\n\nOptional callback that should render a template. The callback will be provided an object with properties/values related to the date expressed in `datetime`.\n\nBy default, the Bento Date Display component will display the [`localeString` form of the Date](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/toLocaleString) for the given locale and localeOption. See the [Returned Time Parameters section](#returned-time-parameters) for more details on how each property will be displayed.\n\n```typescript\n(dateParams: DateParams) => JSXInternal.Element\ninterface DateParams {\n  day: number;\n  dayName: string;\n  dayNameShort: string;\n  dayPeriod: string;\n  dayTwoDigit: string;\n  hour: number;\n  hour12: number;\n  hour12TwoDigit: string;\n  hourTwoDigit: string;\n  iso: string;\n  localeString: string;\n  minute: number;\n  minuteTwoDigit: string;\n  month: number;\n  monthName: string;\n  monthNameShort: string;\n  monthTwoDigit: string;\n  second: number;\n  secondTwoDigit: string;\n  timeZoneName: string;\n  timeZoneNameShort: string;\n  year: number;\n  yearTwoDi: string;\n}\n```\n\n### Returned Time Parameters\n\nThis table lists the format you can specify in your Mustache template:\n\n| Format            | Meaning                                                       |\n| ----------------- | ------------------------------------------------------------- |\n| day               | 1, 2, ...12, 13, etc.                                         |\n| dayName           | string,                                                       |\n| dayNameShort      | string,                                                       |\n| dayPeriod         | string,                                                       |\n| dayTwoDigit       | 01, 02, 03, ..., 12, 13, etc.                                 |\n| hour              | 0, 1, 2, 3, ..., 12, 13, ..., 22, 23                          |\n| hour12            | 1, 2, 3, ..., 12, 1, 2, ..., 11, 12                           |\n| hour12TwoDigit    | 01, 02, ..., 12, 01, 02, ..., 11, 12                          |\n| hourTwoDigit      | 00, 01, 02, ..., 12, 13, ..., 22, 23                          |\n| iso               | A standard ISO8601 date string e.g. 2019-01-23T15:31:21.213Z, |\n| localeString      | A string with a language sensitive representation.            |\n| minute            | 0, 1, 2, ..., 58, 59                                          |\n| minuteTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| month             | 1, 2, 3, ..., 12                                              |\n| monthName         | Internationalized month name string.                          |\n| monthNameShort    | Internationalized abbreviated month name string.,             |\n| monthTwoDigit     | 01, 02, ..., 11, 12                                           |\n| second            | 0, 1, 2, ..., 58, 59                                          |\n| secondTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| timeZoneName      | Internationalized timezone, like `Pacific Daylight Time`      |\n| timeZoneNameShort | Internationalized timezone, abbreviated, like `PST`           |\n| year              | 0, 1, 2, ..., 1999, 2000, 2001, etc.                          |\n| yearTwoDigit      | 00, 01, 02, ..., 17, 18, 19, ..., 98, 99                      |\n","readmeFilename":"README.md","gitHead":"5147b5f8b54805bbea52be75a64d125a06f88aea","bugs":{"url":"https://github.com/ampproject/amphtml/issues"},"_id":"@bentoproject/date-display@1.2208092047.0","_nodeVersion":"16.16.0","_npmVersion":"8.11.0","dist":{"integrity":"sha512-LEwPi/ykGrKJnzKrZT2WAT4lNjJG+KiwEOq0G5z78zmPyklnA44WQmexnOsc4bJ7TlnpxytaRv1Ywd1XMDJW5Q==","shasum":"139df735e733656147b892e0f90a8cb6b663f986","tarball":"https://registry.npmjs.org/@bentoproject/date-display/-/date-display-1.2208092047.0.tgz","fileCount":29,"unpackedSize":677013,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDtO6gvxxQ2B4f+vdGQVpUDClauNhQF1CSa8ZmZYdLj3AIhAL0rf74T3DfYrUi/A+P6Irk4x8hnPbv8bGW5tYEjJlQa"}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJi82u7ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqBug//QTLOHlOZOCu5LlX1Ktp/Mo7jGdLNTPNWvaBxUTjDUx/y37wy\r\nApFA3N3gvN8l/oj0PGpHVsMAl8rkiuTp5spKI/B4hsTt5lFNfTe0YpDvXIVJ\r\n3Ox4ULv0WgRjnQGdZgkhwRmkSLIYOmCJ1p7ZwLYsubjUVBuD4gJZbtlyYCb8\r\nQAgkBVTlmznz+s1N4lw9z9uaDCAcoAnnWCEjJ5ip5GR+Csyzat0R1GlGZa+s\r\nW6/7p+GUpRh0PHX8YAKrq6MzVGJjm9ri4za3A9+J4pXjvkrDliaPV1ESXzwl\r\ngj9ONlCc/5HLGh3TUUzCPgzl22sL6Coai5WDks1yaMr7KsGutduU/Oenh1bB\r\n6r1BQxXVVdCHJbU8fuBZdIgg/daOJl9ihIrJsmoxK5N8540tkp5QYcD8hv2I\r\npy5J4pdSvfpE5oy55XT6IRg0grZr6Yq2GGdU1PpMzA4KHrgs67L9tblRo637\r\nUJKCWi4JaTF0MhEkBQfKGPBT49ZyaZ9ttk4ILSn0+mBH55rzzcb6k277kJqe\r\ndKtRn3JbyInvbeEBHiI7+RcrwhNoq9PNo26a9bemZtxixsbaiVGE4A2q+6hH\r\noP0v58TNQkM8Wz9WyioDdldjnQ84O05YESRBBwBmFQc6MnjcNt2z8kMyZKF+\r\nRUe1AJps2O/aoZi9vTh1KJWlu98a1EMQUX4=\r\n=H6Ga\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"bentoprojectbot","email":"bentobot@amp.dev"},"directories":{},"maintainers":[{"name":"bentoprojectbot","email":"bentobot@amp.dev"},{"name":"kristoferbaxter","email":"kbax@me.com"},{"name":"esth","email":"esther@amp.dev"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/date-display_1.2208092047.0_1660119995280_0.4899345232311971"},"_hasShrinkwrap":false},"1.2207281718.1":{"name":"@bentoproject/date-display","version":"1.2207281718.1","description":"Displays time data that you can render in your page.","author":{"name":"Bento Authors"},"license":"Apache-2.0","main":"./dist/web-component.js","module":"./dist/web-component.module.js","exports":{".":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./web-component":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./preact":{"import":"./dist/component-preact.module.js","require":"./dist/component-preact.js"},"./react":{"import":"./dist/component-react.module.js","require":"./dist/component-react.js"},"./web-component.css":"./dist/web-component.css"},"repository":{"type":"git","url":"git+https://github.com/ampproject/amphtml.git","directory":"extensions/amp-date-display/1.0"},"homepage":"https://github.com/ampproject/amphtml/tree/main/extensions/amp-date-display/1.0","peerDependencies":{"preact":"^10.2.1","react":"^17.0.0"},"dependencies":{"@bentoproject/core":"0.2207281718.1"},"gitHead":"b2cc07c9f0ea3633ed63866b9243ad0bc964dfe1","bugs":{"url":"https://github.com/ampproject/amphtml/issues"},"_id":"@bentoproject/date-display@1.2207281718.1","_nodeVersion":"16.16.0","_npmVersion":"8.11.0","dist":{"integrity":"sha512-aNYDvGr3duMHPu+e/6YgMt2UvK/0IDaWIr7nzytrYyhEBS9j2vThw0keo9LbvKOaIQ8v4S22ZGRjOjB7AxOaww==","shasum":"66a16e19632e6886a2513f60a05b2a8d23451bb6","tarball":"https://registry.npmjs.org/@bentoproject/date-display/-/date-display-1.2207281718.1.tgz","fileCount":29,"unpackedSize":677013,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIEGg1YdMXb2zdDMR2Q3ovbka1OpNCzIVV8zrxcxoOZzTAiEAnhEFY5Tc8hp2wmdTprkel4IYjkOEaOwJCsB1Fg6pJqY="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJi8+NKACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpO1xAAg0EawJlLHEMmLcdGm8ud5KG5Vt0EB14439xtB8FCPBCxAZcR\r\nJx6k1DNn+AnsG0ExLrLXrEmUTrh/kNPWHlOgsdUowfgTcsjLmAMFwkTS1drI\r\n7ZtWEvGgQJUKBC1zrWPFRrDePCz82mkuQ7FyKAwmjp3fRZjsveTelRTPQbBG\r\nsuV9/qGB/gjWvLHbNZVvls1p1dW34FcK1bwBG+GFJvVETVqniSw469tLpbkB\r\n1A/X7OwCAgbkBsAqFk4WnPfBsve+gewatBErxi1A/1AqBGs1gqQP16Ur2NkM\r\n78KzPUCHaG6Zf9mQ+SxBVFC8fp/rqrcIJZ3fNrbfST1E7FvoFm0KQLOKWQQd\r\n9agrM4DEBw+Ls4eWSnxwIlaeyJiyQcCIjCG/C/OLuzhCwI7qVjBHwOpQQ2w6\r\nrJ255PCu+XzEzJwJQghfI8ur0IE+MeWjOTJ0Vrt5ECVNXgIoY1DUXZBE3bnL\r\nCUscH3gj0uCXXSv+Eh4jGC4lGODHZRneg8nv1vr26sSK78frCXlyfP91BWl4\r\n9AVZVVx/dY/ndVsgB5yQE/GNHlNc9qrHe0s8iYJ5clqaqsppaB2SZu3vcumT\r\nY/aGlJBHXrDL3IWplWpGZJ2N6BPV9UvpLb8Yv+Gv2KGs5QK1Uc804uB2NJ5g\r\nnNBxLa36+H4W6//+wwpMq/BqxlqZCSG5HXk=\r\n=WoC8\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"bentoprojectbot","email":"bentobot@amp.dev"},"directories":{},"maintainers":[{"name":"bentoprojectbot","email":"bentobot@amp.dev"},{"name":"kristoferbaxter","email":"kbax@me.com"},{"name":"esth","email":"esther@amp.dev"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/date-display_1.2207281718.1_1660150602106_0.024780695868287905"},"_hasShrinkwrap":false},"1.2207281718.2":{"name":"@bentoproject/date-display","version":"1.2207281718.2","description":"Displays time data that you can render in your page.","author":{"name":"Bento Authors"},"license":"Apache-2.0","main":"./dist/web-component.js","module":"./dist/web-component.module.js","exports":{".":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./web-component":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./preact":{"import":"./dist/component-preact.module.js","require":"./dist/component-preact.js"},"./react":{"import":"./dist/component-react.module.js","require":"./dist/component-react.js"},"./web-component.css":"./dist/web-component.css"},"repository":{"type":"git","url":"git+https://github.com/ampproject/amphtml.git","directory":"extensions/amp-date-display/1.0"},"homepage":"https://github.com/ampproject/amphtml/tree/main/extensions/amp-date-display/1.0","peerDependencies":{"preact":"^10.2.1","react":"^17.0.0"},"dependencies":{"@bentoproject/core":"0.2207281718.2"},"gitHead":"b2cc07c9f0ea3633ed63866b9243ad0bc964dfe1","bugs":{"url":"https://github.com/ampproject/amphtml/issues"},"_id":"@bentoproject/date-display@1.2207281718.2","_nodeVersion":"16.16.0","_npmVersion":"8.11.0","dist":{"integrity":"sha512-0CKuJsPjj7IEUlnlOi+0Jf0KqiVJZBDhKml6rOGI7i2+xUJJok2BMufksrGFeAy8hJax22m5jieBF1tPMewfdA==","shasum":"4543068189b7d5d0099b7ab76994a6b113b14358","tarball":"https://registry.npmjs.org/@bentoproject/date-display/-/date-display-1.2207281718.2.tgz","fileCount":29,"unpackedSize":677013,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDtR7oPSI/Ks4ir5M59evrBkQxZZdKT/VuwCRY8OlEjbwIgA7LEtRM1Y/8fDEmAMvpCVzKmjxgSBi0AfZ3zHW+eJhY="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJi8/W+ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmo2WQ//bk2/+zysIYNZ9AGVzochWN/buV8sS7FxWzv895L08S4cTzoG\r\nc6FVP469T/xqBZ1qsZOABBLPqTcn1m2i0vRmuqS+7zwZ2iLBD/OucuGx/m5W\r\nFtR6BgB899kb9+MPbWw3h20fn9N7WifMhmBnFKBuxqYzPP0cX4y/5Zt+4GF/\r\nXuFU0EcGdMwDUs8PQ/1xsGOTjXYeFrxLtuUP/+4BbrN7u76xHW2D0LzBt/ja\r\nXyhFY0pt1bIWjIEFzksibpsJeqsF9MIXt5xIb5QhK0yY4lkHCSdHQl9Ta3Ut\r\n1ytGDb3+gT3uSVAn/suWEn5treH3I01UKkL6dy9quwL5gksBWaKwaNPNdvMo\r\n5TSVYqqDpP4EzohjrEdxaBn1ag62uRSPsEmyO7jkqPlNwGKmVegesY2IjvIe\r\nAs98V/ZZ8YOgCW9Lf+cVXppiGxzffax1Gr5s+iZEFW6ktDtPUlR9FbOkNNNS\r\nUdl9/7ryGBZ9ynxpru2C2weHssGOp+dWW1ao9v68GdZIyy06wItMGTyg+5N3\r\nKRTtTw6qjSxKWG90Qsxa1D2QptDr+I4th14zcNCDD1zY8T0n9EaRESwmziII\r\nzW1MkwEqrZx5rs8bKq+wozEr2IZwERNQs2kFxanwcq8Vqcs6WabPk63K7bdQ\r\nfhuAYFzSnGqEUCBJYaCYwBmnW6nPK2AC8RU=\r\n=ewtb\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"bentoprojectbot","email":"bentobot@amp.dev"},"directories":{},"maintainers":[{"name":"bentoprojectbot","email":"bentobot@amp.dev"},{"name":"kristoferbaxter","email":"kbax@me.com"},{"name":"esth","email":"esther@amp.dev"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/date-display_1.2207281718.2_1660155326605_0.5077516945957374"},"_hasShrinkwrap":false},"1.2208112015.0":{"name":"@bentoproject/date-display","version":"1.2208112015.0","description":"Displays time data that you can render in your page.","author":{"name":"Bento Authors"},"license":"Apache-2.0","main":"./dist/web-component.js","module":"./dist/web-component.module.js","exports":{".":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./web-component":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./preact":{"import":"./dist/component-preact.module.js","require":"./dist/component-preact.js"},"./react":{"import":"./dist/component-react.module.js","require":"./dist/component-react.js"},"./web-component.css":"./dist/web-component.css"},"repository":{"type":"git","url":"git+https://github.com/ampproject/amphtml.git","directory":"extensions/amp-date-display/1.0"},"homepage":"https://github.com/ampproject/amphtml/tree/main/extensions/amp-date-display/1.0","peerDependencies":{"preact":"^10.2.1","react":"^17.0.0"},"dependencies":{"@bentoproject/core":"0.2208112015.0"},"readme":"# Bento Date Display\n\nDisplays time data that you can render in your page. By providing specific [attributes](#attributes) in the Bento Date Display tag, the Bento Date Display extension returns a list of time parameters, which you can pass to [an amp-mustache template](../../amp-mustache/amp-mustache.md) for rendering. Refer to the [list below for each returned time parameter](#returned-time-parameters).\n\n## Web Component\n\nYou must include each Bento component's required CSS library to guarantee proper loading and before adding custom styles. Or use the light-weight pre-upgrade styles available inline. See [Layout and style](#layout-and-style).\n\n### Example: Import via npm\n\nInstall via npm:\n\n```sh\nnpm install @bentoproject/bento-date-display\n```\n\n```javascript\nimport {defineElement as defineBentoDateDisplay} from '@bentoproject/bento-date-display';\ndefineBentoDateDisplay();\n```\n\n### Include via `<script>`\n\n```html\n<script type=\"module\" src=\"https://cdn.ampproject.org/bento.mjs\" crossorigin=\"anonymous\"></script>\n<script nomodule src=\"https://cdn.ampproject.org/bento.js\" crossorigin=\"anonymous\"></script>\n<!-- Include bento-mustache.js to use mustache templates with this component -->\n<script async src=\"https://cdn.ampproject.org/v0/bento-mustache.js\"></script>\n<script type=\"module\" src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.mjs\" crossorigin=\"anonymous\"></script>\n<script nomodule src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.js\" crossorigin=\"anonymous\"></script>\n<link rel=\"stylesheet\" href=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.css\" crossorigin=\"anonymous\">\n```\n\n### Example\n\n```html\n<!DOCTYPE html>\n<html>\n  <head>\n    <script\n      type=\"module\"\n      async\n      src=\"https://cdn.ampproject.org/bento.mjs\"\n    ></script>\n    <script nomodule src=\"https://cdn.ampproject.org/bento.js\"></script>\n    <script async src=\"https://cdn.ampproject.org/v0/bento-mustache.js\"></script>\n    <script\n      type=\"module\"\n      async\n      src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.mjs\"\n    ></script>\n    <script\n      nomodule\n      async\n      src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.js\"\n    ></script>\n    <link\n      rel=\"stylesheet\"\n      type=\"text/css\"\n      href=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.css\"\n    />\n  </head>\n  <body>\n    <bento-date-display\n      datetime=\"2021-09-09T16:02:08.494Z\"\n      displayIn=\"utc\"\n      locale=\"en-GB\"\n    >\n      <template>\n        <div>ISO: {{iso}}; locale: {{localeString}}</div>\n      </template>\n    </bento-date-display>\n  </body>\n</html>\n```\n\n### Interactivity and API usage\n\nThe Bento Date Display component does not have an imperative API. However, the Bento Date Display Web Component will render a mustache-template, provided by the consumer in a `<template>` tag with `type=\"amp-mustache\"`. This template may interpolate date-related parameters. See the [Returned Time Parameters section](#returned-time-parameters) for a full list of all the available parameters.\n\n### Layout and style\n\nEach Bento component has a small CSS library you must include to guarantee proper loading without [content shifts](https://web.dev/cls/). Because of order-based specificity, you must manually ensure that stylesheets are included before any custom styles.\n\n```html\n<link rel=\"stylesheet\" type=\"text/css\" href=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.css\">\n```\n\nAlternatively, you may also make the light-weight pre-upgrade styles available inline:\n\n```html\n<style data-bento-boilerplate>\n  bento-date-display {\n    display: block;\n    overflow: hidden;\n    position: relative;\n  }\n</style>\n```\n\n### Attributes\n\n#### `datetime`\n\nThe `datetime` attribute specifies the date and time in a standard ISO 8601 date\nstring (e.g. 2017-08-02T15:05:05.000Z) or the string `now`. If set to `now`,\n`bento-date-display` will use the time the page loaded to render its template.\n\n#### `timestamp-ms`\n\nThe `timestamp-ms` attribute specifies the date and time using the number of\nmilliseconds since 1970-01-01T0:00:00.000Z\n\n#### `timestamp-seconds`\n\nThe `timestamp-seconds` attribute specifies the date and time using the number\nof seconds since 1970-01-01T0:00:00.000Z\n\n#### `locale` (optional)\n\nAn internationalization language string for each timer unit. The default value\nis `en` (for English). This attribute supports all values that are supported by\nthe user's browser.\n\n#### `display-in` (optional)\n\nIf set to the value `utc`, the `display-in` attribute will convert the given\ndate to UTC.\n\n#### `offset-seconds` (optional)\n\nThe `offset-seconds` attribute specifies an integer number of seconds to shift\nthe given date.\n\n#### `data-options-\\*` (optional)\n\nThe `data-options-*` supports all the options under [Intl.DateTimeFormat.options](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/DateTimeFormat#parameters)\nparameter that specifies the formatting style to use for `localeString` format.\nValid attributes include: `data-options-date-style`, `data-options-time-style`, etc.\n\nNote that if `display-in` attrubute is set to `utc`, the value of\n`data-options-time-zone` will automatically be converted to `UTC`.\n\n### Styling\n\nYou may use the `bento-date-display` element selector to style the Bento Date Display component freely.\n\n---\n\n## Preact/React Component\n\n### Import via npm\n\n```sh\nnpm install @bentoproject/date-display\n```\n\n```javascript\nimport React from 'react';\nimport {BentoDateDisplay} from '@bentoproject/date-display/react';\nimport '@bentoproject/date-display/styles.css';\n\nfunction App() {\n  return (\n    <BentoDateDisplay\n      datetime={dateTime}\n      displayIn={displayIn}\n      locale={locale}\n      render={(date) => (\n        <div>{`ISO: ${date.iso}; locale: ${date.localeString}`}</div>\n      )}\n    />\n  );\n}\n```\n\n### Interactivity and API usage\n\nThe Bento Date Display component does not have an imperative API. However, the Bento Date Display Preact/React component does accept a `render` prop that renders the consumer's template. This `render` prop should be a function which the Bento Date Display Preact/React component can use to render its template. The `render` callback will be provided a variety of date-related parameters for consumers to interpolate in the rendered template. See the [`render` prop section](#render) for more information.\n\n### Layout and style\n\nThe Bento Date Display Preact/React component allows consumers to render their own templates. These templates may use inline styles, `<style>` tags, Preact/React components that import their own stylesheets.\n\n### Props\n\n#### `datetime`\n\nRequired prop. Denotes the date and time as a Date, String, or Number. If String, must be a standard ISO 8601 date string (e.g. 2017-08-02T15:05:05.000Z) or the string `now`. If set to `now`, it will use the time the page loaded to render its template. If Number, must be a POSIX epoch value in milliseconds.\n\n#### `displayIn`\n\nOptional prop that can be either `\"utc\"` or `\"local\"` and defaults to `\"local\"`. This prop indicates what timezone to display the date in. If set to the value `\"utc\"`, the component will convert the given date to UTC.\n\n#### `locale`\n\nAn internationalization language string for each timer unit. The default value is `en` (for English). This prop supports all values that are supported by the user's browser.\n\n#### `localeOptions`\n\nThe `localeOptions` object supports all the options under [Intl.DateTimeFormat.options](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/DateTimeFormat#parameters) parameter that specifies the formatting style to use for `localeString` format.\n\nNote that if the `displayIn` prop is set to `utc`, the value of `localeOptions.timeZone` will automatically be converted to `UTC`.\n\n#### `render`\n\nOptional callback that should render a template. The callback will be provided an object with properties/values related to the date expressed in `datetime`.\n\nBy default, the Bento Date Display component will display the [`localeString` form of the Date](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/toLocaleString) for the given locale and localeOption. See the [Returned Time Parameters section](#returned-time-parameters) for more details on how each property will be displayed.\n\n```typescript\n(dateParams: DateParams) => JSXInternal.Element\ninterface DateParams {\n  day: number;\n  dayName: string;\n  dayNameShort: string;\n  dayPeriod: string;\n  dayTwoDigit: string;\n  hour: number;\n  hour12: number;\n  hour12TwoDigit: string;\n  hourTwoDigit: string;\n  iso: string;\n  localeString: string;\n  minute: number;\n  minuteTwoDigit: string;\n  month: number;\n  monthName: string;\n  monthNameShort: string;\n  monthTwoDigit: string;\n  second: number;\n  secondTwoDigit: string;\n  timeZoneName: string;\n  timeZoneNameShort: string;\n  year: number;\n  yearTwoDi: string;\n}\n```\n\n### Returned Time Parameters\n\nThis table lists the format you can specify in your Mustache template:\n\n| Format            | Meaning                                                       |\n| ----------------- | ------------------------------------------------------------- |\n| day               | 1, 2, ...12, 13, etc.                                         |\n| dayName           | string,                                                       |\n| dayNameShort      | string,                                                       |\n| dayPeriod         | string,                                                       |\n| dayTwoDigit       | 01, 02, 03, ..., 12, 13, etc.                                 |\n| hour              | 0, 1, 2, 3, ..., 12, 13, ..., 22, 23                          |\n| hour12            | 1, 2, 3, ..., 12, 1, 2, ..., 11, 12                           |\n| hour12TwoDigit    | 01, 02, ..., 12, 01, 02, ..., 11, 12                          |\n| hourTwoDigit      | 00, 01, 02, ..., 12, 13, ..., 22, 23                          |\n| iso               | A standard ISO8601 date string e.g. 2019-01-23T15:31:21.213Z, |\n| localeString      | A string with a language sensitive representation.            |\n| minute            | 0, 1, 2, ..., 58, 59                                          |\n| minuteTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| month             | 1, 2, 3, ..., 12                                              |\n| monthName         | Internationalized month name string.                          |\n| monthNameShort    | Internationalized abbreviated month name string.,             |\n| monthTwoDigit     | 01, 02, ..., 11, 12                                           |\n| second            | 0, 1, 2, ..., 58, 59                                          |\n| secondTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| timeZoneName      | Internationalized timezone, like `Pacific Daylight Time`      |\n| timeZoneNameShort | Internationalized timezone, abbreviated, like `PST`           |\n| year              | 0, 1, 2, ..., 1999, 2000, 2001, etc.                          |\n| yearTwoDigit      | 00, 01, 02, ..., 17, 18, 19, ..., 98, 99                      |\n","readmeFilename":"README.md","gitHead":"83d345ea27d61c78ced5f68848c4f342e947fab2","bugs":{"url":"https://github.com/ampproject/amphtml/issues"},"_id":"@bentoproject/date-display@1.2208112015.0","_nodeVersion":"16.16.0","_npmVersion":"8.11.0","dist":{"integrity":"sha512-F4BWeF3CIV6GebHLKH9m7pDYxSWDaQknx9hGBMtGeMdwbqQqdj0JJ2MNYmtvbZSSuD+n1ulMf9jBdIOrCgNhJQ==","shasum":"c7cffc51284b1bab9f783e06d5fa61a466bb66c4","tarball":"https://registry.npmjs.org/@bentoproject/date-display/-/date-display-1.2208112015.0.tgz","fileCount":29,"unpackedSize":677013,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQC3/5aXsZRDGYTacea+BduSinn0CfOyTXU/gYn2CJDv3gIgU00t63wyKb6jfdbQZdFmsL/Cynnpq4ZtZHM35Knx7WQ="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJi9g7uACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmoqpBAAmgD63J6pwkps5HCFEDrfyV55a2ZKpu13wyKiB9FO0cVekeEv\r\noo73KHc8c1UnW9VQlDGTcVJ+uk3hSzXUu5lr+fxDSrUNTI9jUK5JXmH/H2BR\r\n9Qqp5QxLrXzgFuW6hDm/Qg8iA+5Ynf00AUaJvueE73JIdF1IojS9cQoMnhuU\r\nIl1fyMKc8UuHGCGF6slTXcIgv1mPQS3F4RvT/a3nox9NUuSjjbDI/mtiw1Mo\r\n0NxVQAOavO9SQQP1/xu4XJ3yOcRrGolyIqdafEdcq0KxaLeA47ZHt0TeY/0X\r\nrYoqDbiwteSqQ819KJFgpQngu9x6lQ1cyCqeV4NufVXKaMi328wqGFNiMVaW\r\nT4UYLnT8Pi/AFBjPJrax5NfxbtCeYgjxeiOWgSTKMz8jKP96rlGSdURbz9xW\r\n75z2bHfIfnhTh3mLWUgxssCq1OQkHQiLavOGGN2Xe3QiF7nNLP8HzQWaIEye\r\nOftLqUV4skwF9aEgiYDNmuyARm2CJbzx8ZytOx474zNduCJEqo3p+v5BlN5E\r\neD0LPleSV+EHPs1EfQyx6e51L3VotVK0pQ+4u2nqjU/j7JS++pS0krlA1tO/\r\ntUnRjJVS7Bn8VYQC9s9MGyu3O8viVf3Izzr1XgUoQysqUA493llKijx6xblG\r\ngK7eatX0iK1RGcwv8x+o3qb6D2+RQf0f0Z4=\r\n=KW1k\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"bentoprojectbot","email":"bentobot@amp.dev"},"directories":{},"maintainers":[{"name":"bentoprojectbot","email":"bentobot@amp.dev"},{"name":"kristoferbaxter","email":"kbax@me.com"},{"name":"esth","email":"esther@amp.dev"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/date-display_1.2208112015.0_1660292846239_0.26778211816966"},"_hasShrinkwrap":false},"1.2208121708.0":{"name":"@bentoproject/date-display","version":"1.2208121708.0","description":"Displays time data that you can render in your page.","author":{"name":"Bento Authors"},"license":"Apache-2.0","main":"./dist/web-component.js","module":"./dist/web-component.module.js","exports":{".":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./web-component":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./preact":{"import":"./dist/component-preact.module.js","require":"./dist/component-preact.js"},"./react":{"import":"./dist/component-react.module.js","require":"./dist/component-react.js"},"./web-component.css":"./dist/web-component.css"},"repository":{"type":"git","url":"git+https://github.com/ampproject/amphtml.git","directory":"extensions/amp-date-display/1.0"},"homepage":"https://github.com/ampproject/amphtml/tree/main/extensions/amp-date-display/1.0","peerDependencies":{"preact":"^10.2.1","react":"^17.0.0"},"dependencies":{"@bentoproject/core":"0.2208121708.0"},"gitHead":"c9c6de085436b10c2fcf8e6c10541d6d2658af93","bugs":{"url":"https://github.com/ampproject/amphtml/issues"},"_id":"@bentoproject/date-display@1.2208121708.0","_nodeVersion":"16.16.0","_npmVersion":"8.11.0","dist":{"integrity":"sha512-ZrGXwTGqO0Iywye3SKlMVMW607GKRQ7eYwfbP42O0sY0+gbV1Pn4/eFMvvL9Dhif/y79QU9tGu6fyK0wq/gZAg==","shasum":"96b23386130a1a45df24015787b7529e3a247fc1","tarball":"https://registry.npmjs.org/@bentoproject/date-display/-/date-display-1.2208121708.0.tgz","fileCount":29,"unpackedSize":677013,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIFnaBLx0EXsR9fiLr6ERGN2qEqKn+/Hcbu9LGremO6aLAiEAq/VKtbtsGLPxBqH7Ji8P0FyAyVA008ji/dNVrJA0isc="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJi92AyACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmq+rg//Tdgt9ALVrTzCZHrAtZoe97VmNvnc33jZna6N0YWLm8xJiEbC\r\ndZKLDtiB34FI7XALqgggqDqPolmEHwgRu6H3cLneX4SJpJVQK1Tfm8sKG9sZ\r\nObU4yPKxLphkfrh1Ha0xbVVN+8fqJjq/c36rPRG4PVPwF12MhwF06LLHBDTC\r\nrPqsfA7hyaH21WwLAjF3S7lKbYVAacnk0Ih7fjYQ7BFt5tFYtTqMvDQ0PE7q\r\npjd4hdgdKf7kjdTJCpMyj9Yq/q20lTfFAWWl9uadeqodv4q5S8ncDEurzn1V\r\nxznrVxuuklDvjff8bZ0WoOwudditH+wLWpzpjCSksCIaw3iDOHwYb2hEL2cL\r\nW3ruhwdbCJHS5+XgBHapsFBFuFNh0rT/q3+IGQLX96JRUwsGQ1gKZBPhsLNY\r\nh9o38vIiqBziXhJyvuHaZrNK3NpCOs2/fgT7LYgAr8IWNWC9khbsRTR/fTal\r\ntGkuof4kpQ3+RhyhrW4YBy5B/unCav+gih36UjSHAVZz882E6bfkRHamtGGU\r\nvdYkz78otiwRA3yFGA6YQXRER38pN/jIOQMKk9JaAT1J0J4fPn3Yu2BNzjyh\r\nB727cOfAVVq58AMyGXfBRnOQQp+lRdth5tKGOi3o4fAa9KEtr79AK5Cwxpaq\r\ngvU9E3yMihmO3TzwKqgvLO2eCXmByD/N/jE=\r\n=+t/m\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"bentoprojectbot","email":"bentobot@amp.dev"},"directories":{},"maintainers":[{"name":"bentoprojectbot","email":"bentobot@amp.dev"},{"name":"kristoferbaxter","email":"kbax@me.com"},{"name":"esth","email":"esther@amp.dev"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/date-display_1.2208121708.0_1660379185914_0.821286595649916"},"_hasShrinkwrap":false},"1.2208051912.1":{"name":"@bentoproject/date-display","version":"1.2208051912.1","description":"Displays time data that you can render in your page.","author":{"name":"Bento Authors"},"license":"Apache-2.0","main":"./dist/web-component.js","module":"./dist/web-component.module.js","exports":{".":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./web-component":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./preact":{"import":"./dist/component-preact.module.js","require":"./dist/component-preact.js"},"./react":{"import":"./dist/component-react.module.js","require":"./dist/component-react.js"},"./web-component.css":"./dist/web-component.css"},"repository":{"type":"git","url":"git+https://github.com/ampproject/amphtml.git","directory":"extensions/amp-date-display/1.0"},"homepage":"https://github.com/ampproject/amphtml/tree/main/extensions/amp-date-display/1.0","peerDependencies":{"preact":"^10.2.1","react":"^17.0.0"},"dependencies":{"@bentoproject/core":"0.2208051912.1"},"gitHead":"c9c6de085436b10c2fcf8e6c10541d6d2658af93","bugs":{"url":"https://github.com/ampproject/amphtml/issues"},"_id":"@bentoproject/date-display@1.2208051912.1","_nodeVersion":"16.16.0","_npmVersion":"8.11.0","dist":{"integrity":"sha512-yLI8vGL84g1s1zx9+8e9MoZmC1rXqkaFYnYfOzwk8cdgJR71SgfZ8rBu/m6ieehvT3NuI7UJluTrJT4Soz7sSw==","shasum":"5e1d15376cc933ba41a634ff9cdb4eddb6b438e3","tarball":"https://registry.npmjs.org/@bentoproject/date-display/-/date-display-1.2208051912.1.tgz","fileCount":29,"unpackedSize":677013,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDM+sXSCGVdnUZRN2VRvyUuSrgF9aAvwbWTC0PbXybOXQIhAPKVa5eoRMOc6BpHqNvqLqGsxrjiQvl21ZVRYjuqAP/i"}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJi/CKCACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrJlg//bjbwmzxYwJtWWy8XwzwnTi+gq1QTLRZBpzVmkOAPSbAKysSg\r\nfbkqCz2iA+JDOo074/nZ+R9gpe1l87DXyKB+SeK0Kxk5ngwbec4t0K7PIZdA\r\nKNo8WC0YLJO5rmxuoDBdwD0obeGYoxj2ObfEfV3F19bmM/X55bR1bHqnVpgo\r\nZOR3y1dbMJqFeNzxXuzZrspC7UTxgA1rzx5tUYhQ1lbwnCyktPKYFvKRCUGp\r\nzKu2ZtnbWygRSHXwJCYOz9fsRIzWk/xLtrcnJqArYaUog0JSyjPiM0NXdvNs\r\nd6VuXhy9lTbffztdJP5T3XcO4SOWKbQ1ydzvxMNqILeIcyrSV7ZI+Nz7lvnk\r\npWXQeFp+m0IrcHnT6TK8FMVK45yqktFBZ/8BY0zr4AcVn49zc1TFMqW1MGpg\r\n6LgO8b9RJKPVb6oFjCi+UX/jXR8dOqqv47edPiv2svEA6a167P03s90bLguW\r\nT1mOHBkp6qh5RfVWSV+P5CWkpabWghvAkkajkxJni6Ftv/NIYSJsjjz9FOZO\r\n+cI7h1lojW/8pn07vjkStfau0ZIo2/cJxmf7Q1qb9ZH/M9FWP9AEuz09l3bQ\r\n/NVniVq5p7wQx9IBb4Y4a/fLbhojALirAfdOonLk1v6v55LvQaWMuoRe9c4j\r\nlYyQe16iAjBmKPH4uPJ9i9aWL7aPozrECsY=\r\n=XVGY\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"bentoprojectbot","email":"bentobot@amp.dev"},"directories":{},"maintainers":[{"name":"bentoprojectbot","email":"bentobot@amp.dev"},{"name":"kristoferbaxter","email":"kbax@me.com"},{"name":"esth","email":"esther@amp.dev"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/date-display_1.2208051912.1_1660691074476_0.2887907503894407"},"_hasShrinkwrap":false},"1.2208172101.0":{"name":"@bentoproject/date-display","version":"1.2208172101.0","description":"Displays time data that you can render in your page.","author":{"name":"Bento Authors"},"license":"Apache-2.0","main":"./dist/web-component.js","module":"./dist/web-component.module.js","exports":{".":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./web-component":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./preact":{"import":"./dist/component-preact.module.js","require":"./dist/component-preact.js"},"./react":{"import":"./dist/component-react.module.js","require":"./dist/component-react.js"},"./web-component.css":"./dist/web-component.css"},"repository":{"type":"git","url":"git+https://github.com/ampproject/amphtml.git","directory":"extensions/amp-date-display/1.0"},"homepage":"https://github.com/ampproject/amphtml/tree/main/extensions/amp-date-display/1.0","peerDependencies":{"preact":"^10.2.1","react":"^17.0.0"},"dependencies":{"@bentoproject/core":"0.2208172101.0"},"readme":"# Bento Date Display\n\nDisplays time data that you can render in your page. By providing specific [attributes](#attributes) in the Bento Date Display tag, the Bento Date Display extension returns a list of time parameters, which you can pass to [an amp-mustache template](../../amp-mustache/amp-mustache.md) for rendering. Refer to the [list below for each returned time parameter](#returned-time-parameters).\n\n## Web Component\n\nYou must include each Bento component's required CSS library to guarantee proper loading and before adding custom styles. Or use the light-weight pre-upgrade styles available inline. See [Layout and style](#layout-and-style).\n\n### Example: Import via npm\n\nInstall via npm:\n\n```sh\nnpm install @bentoproject/bento-date-display\n```\n\n```javascript\nimport {defineElement as defineBentoDateDisplay} from '@bentoproject/bento-date-display';\ndefineBentoDateDisplay();\n```\n\n### Include via `<script>`\n\n```html\n<script type=\"module\" src=\"https://cdn.ampproject.org/bento.mjs\" crossorigin=\"anonymous\"></script>\n<script nomodule src=\"https://cdn.ampproject.org/bento.js\" crossorigin=\"anonymous\"></script>\n<!-- Include bento-mustache.js to use mustache templates with this component -->\n<script async src=\"https://cdn.ampproject.org/v0/bento-mustache.js\"></script>\n<script type=\"module\" src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.mjs\" crossorigin=\"anonymous\"></script>\n<script nomodule src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.js\" crossorigin=\"anonymous\"></script>\n<link rel=\"stylesheet\" href=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.css\" crossorigin=\"anonymous\">\n```\n\n### Example\n\n```html\n<!DOCTYPE html>\n<html>\n  <head>\n    <script\n      type=\"module\"\n      async\n      src=\"https://cdn.ampproject.org/bento.mjs\"\n    ></script>\n    <script nomodule src=\"https://cdn.ampproject.org/bento.js\"></script>\n    <script async src=\"https://cdn.ampproject.org/v0/bento-mustache.js\"></script>\n    <script\n      type=\"module\"\n      async\n      src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.mjs\"\n    ></script>\n    <script\n      nomodule\n      async\n      src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.js\"\n    ></script>\n    <link\n      rel=\"stylesheet\"\n      type=\"text/css\"\n      href=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.css\"\n    />\n  </head>\n  <body>\n    <bento-date-display\n      datetime=\"2021-09-09T16:02:08.494Z\"\n      displayIn=\"utc\"\n      locale=\"en-GB\"\n    >\n      <template>\n        <div>ISO: {{iso}}; locale: {{localeString}}</div>\n      </template>\n    </bento-date-display>\n  </body>\n</html>\n```\n\n### Interactivity and API usage\n\nThe Bento Date Display component does not have an imperative API. However, the Bento Date Display Web Component will render a mustache-template, provided by the consumer in a `<template>` tag with `type=\"amp-mustache\"`. This template may interpolate date-related parameters. See the [Returned Time Parameters section](#returned-time-parameters) for a full list of all the available parameters.\n\n### Layout and style\n\nEach Bento component has a small CSS library you must include to guarantee proper loading without [content shifts](https://web.dev/cls/). Because of order-based specificity, you must manually ensure that stylesheets are included before any custom styles.\n\n```html\n<link rel=\"stylesheet\" type=\"text/css\" href=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.css\">\n```\n\nAlternatively, you may also make the light-weight pre-upgrade styles available inline:\n\n```html\n<style data-bento-boilerplate>\n  bento-date-display {\n    display: block;\n    overflow: hidden;\n    position: relative;\n  }\n</style>\n```\n\n### Attributes\n\n#### `datetime`\n\nThe `datetime` attribute specifies the date and time in a standard ISO 8601 date\nstring (e.g. 2017-08-02T15:05:05.000Z) or the string `now`. If set to `now`,\n`bento-date-display` will use the time the page loaded to render its template.\n\n#### `timestamp-ms`\n\nThe `timestamp-ms` attribute specifies the date and time using the number of\nmilliseconds since 1970-01-01T0:00:00.000Z\n\n#### `timestamp-seconds`\n\nThe `timestamp-seconds` attribute specifies the date and time using the number\nof seconds since 1970-01-01T0:00:00.000Z\n\n#### `locale` (optional)\n\nAn internationalization language string for each timer unit. The default value\nis `en` (for English). This attribute supports all values that are supported by\nthe user's browser.\n\n#### `display-in` (optional)\n\nIf set to the value `utc`, the `display-in` attribute will convert the given\ndate to UTC.\n\n#### `offset-seconds` (optional)\n\nThe `offset-seconds` attribute specifies an integer number of seconds to shift\nthe given date.\n\n#### `data-options-\\*` (optional)\n\nThe `data-options-*` supports all the options under [Intl.DateTimeFormat.options](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/DateTimeFormat#parameters)\nparameter that specifies the formatting style to use for `localeString` format.\nValid attributes include: `data-options-date-style`, `data-options-time-style`, etc.\n\nNote that if `display-in` attrubute is set to `utc`, the value of\n`data-options-time-zone` will automatically be converted to `UTC`.\n\n### Styling\n\nYou may use the `bento-date-display` element selector to style the Bento Date Display component freely.\n\n---\n\n## Preact/React Component\n\n### Import via npm\n\n```sh\nnpm install @bentoproject/date-display\n```\n\n```javascript\nimport React from 'react';\nimport {BentoDateDisplay} from '@bentoproject/date-display/react';\nimport '@bentoproject/date-display/styles.css';\n\nfunction App() {\n  return (\n    <BentoDateDisplay\n      datetime={dateTime}\n      displayIn={displayIn}\n      locale={locale}\n      render={(date) => (\n        <div>{`ISO: ${date.iso}; locale: ${date.localeString}`}</div>\n      )}\n    />\n  );\n}\n```\n\n### Interactivity and API usage\n\nThe Bento Date Display component does not have an imperative API. However, the Bento Date Display Preact/React component does accept a `render` prop that renders the consumer's template. This `render` prop should be a function which the Bento Date Display Preact/React component can use to render its template. The `render` callback will be provided a variety of date-related parameters for consumers to interpolate in the rendered template. See the [`render` prop section](#render) for more information.\n\n### Layout and style\n\nThe Bento Date Display Preact/React component allows consumers to render their own templates. These templates may use inline styles, `<style>` tags, Preact/React components that import their own stylesheets.\n\n### Props\n\n#### `datetime`\n\nRequired prop. Denotes the date and time as a Date, String, or Number. If String, must be a standard ISO 8601 date string (e.g. 2017-08-02T15:05:05.000Z) or the string `now`. If set to `now`, it will use the time the page loaded to render its template. If Number, must be a POSIX epoch value in milliseconds.\n\n#### `displayIn`\n\nOptional prop that can be either `\"utc\"` or `\"local\"` and defaults to `\"local\"`. This prop indicates what timezone to display the date in. If set to the value `\"utc\"`, the component will convert the given date to UTC.\n\n#### `locale`\n\nAn internationalization language string for each timer unit. The default value is `en` (for English). This prop supports all values that are supported by the user's browser.\n\n#### `localeOptions`\n\nThe `localeOptions` object supports all the options under [Intl.DateTimeFormat.options](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/DateTimeFormat#parameters) parameter that specifies the formatting style to use for `localeString` format.\n\nNote that if the `displayIn` prop is set to `utc`, the value of `localeOptions.timeZone` will automatically be converted to `UTC`.\n\n#### `render`\n\nOptional callback that should render a template. The callback will be provided an object with properties/values related to the date expressed in `datetime`.\n\nBy default, the Bento Date Display component will display the [`localeString` form of the Date](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/toLocaleString) for the given locale and localeOption. See the [Returned Time Parameters section](#returned-time-parameters) for more details on how each property will be displayed.\n\n```typescript\n(dateParams: DateParams) => JSXInternal.Element\ninterface DateParams {\n  day: number;\n  dayName: string;\n  dayNameShort: string;\n  dayPeriod: string;\n  dayTwoDigit: string;\n  hour: number;\n  hour12: number;\n  hour12TwoDigit: string;\n  hourTwoDigit: string;\n  iso: string;\n  localeString: string;\n  minute: number;\n  minuteTwoDigit: string;\n  month: number;\n  monthName: string;\n  monthNameShort: string;\n  monthTwoDigit: string;\n  second: number;\n  secondTwoDigit: string;\n  timeZoneName: string;\n  timeZoneNameShort: string;\n  year: number;\n  yearTwoDi: string;\n}\n```\n\n### Returned Time Parameters\n\nThis table lists the format you can specify in your Mustache template:\n\n| Format            | Meaning                                                       |\n| ----------------- | ------------------------------------------------------------- |\n| day               | 1, 2, ...12, 13, etc.                                         |\n| dayName           | string,                                                       |\n| dayNameShort      | string,                                                       |\n| dayPeriod         | string,                                                       |\n| dayTwoDigit       | 01, 02, 03, ..., 12, 13, etc.                                 |\n| hour              | 0, 1, 2, 3, ..., 12, 13, ..., 22, 23                          |\n| hour12            | 1, 2, 3, ..., 12, 1, 2, ..., 11, 12                           |\n| hour12TwoDigit    | 01, 02, ..., 12, 01, 02, ..., 11, 12                          |\n| hourTwoDigit      | 00, 01, 02, ..., 12, 13, ..., 22, 23                          |\n| iso               | A standard ISO8601 date string e.g. 2019-01-23T15:31:21.213Z, |\n| localeString      | A string with a language sensitive representation.            |\n| minute            | 0, 1, 2, ..., 58, 59                                          |\n| minuteTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| month             | 1, 2, 3, ..., 12                                              |\n| monthName         | Internationalized month name string.                          |\n| monthNameShort    | Internationalized abbreviated month name string.,             |\n| monthTwoDigit     | 01, 02, ..., 11, 12                                           |\n| second            | 0, 1, 2, ..., 58, 59                                          |\n| secondTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| timeZoneName      | Internationalized timezone, like `Pacific Daylight Time`      |\n| timeZoneNameShort | Internationalized timezone, abbreviated, like `PST`           |\n| year              | 0, 1, 2, ..., 1999, 2000, 2001, etc.                          |\n| yearTwoDigit      | 00, 01, 02, ..., 17, 18, 19, ..., 98, 99                      |\n","readmeFilename":"README.md","gitHead":"372d5623dc25138bb97bd48cd5f97f3be8008658","bugs":{"url":"https://github.com/ampproject/amphtml/issues"},"_id":"@bentoproject/date-display@1.2208172101.0","_nodeVersion":"16.16.0","_npmVersion":"8.11.0","dist":{"integrity":"sha512-ZbFvXLC/pppC9MyBq3ZsdlZEvnDlawGFyCvoll+OBH+JFZVi6iS9P4KqeIbMoAxuFf3tDnApXjTfSGBmquEuYw==","shasum":"3ba1b198ab49f886121140748e3ed28710471de8","tarball":"https://registry.npmjs.org/@bentoproject/date-display/-/date-display-1.2208172101.0.tgz","fileCount":29,"unpackedSize":677013,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIAITBxIAL9j7C6aaB1hixyavDw6xu5pd4wUdrb499qCcAiEA3crRnRHmePGRwhLoeBBgsyXfx9iZsMul2pNRE2mwbKc="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjBpAcACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmoNWA//ZorpG+8zlHUu3F4N1DoOibeKllKynLQjV+SKmuoycS2pYNJv\r\nMybOqxiOCvZPcQk0VxxXXmhA7Jw60aPKg28G29BZY7+E7kZFClRdfG98W5gI\r\nvJTNvF85LKABB9YBlJ6D0r+jE6iPDVHJQzS5AGuBybQqmv5WeWfKjokijteH\r\nt6+t+NG8SgGRWpLCAboUzzzeYrgaEA70Li3TjwK4fNdPSbzJB2NnsPdnjyd5\r\nisciqGDMSqu9lObhh2savm56V77LFgQMw0vo+yp6bTHhLPVthMyBanHpkDke\r\nYLmFnPYkjf8lAWBk1A0Bg6W2JFNjCToXY6KTLBVGwG9pheM8QARBfYPd2x0s\r\nrzpmv9nj/od6FW/KbtjjyeU+LFJFKn/FV5T4/+eue9EHEQ196JZl3vSWO95w\r\nb97mFap50o/65hn1zhonqom9JQrgFXTbrLWScRyIvcXnlA86+7ni7PBUI2am\r\nU3nii3jbjuRe03S17snm8XvGIlMpEt3rzbkSsb0+L6a3c7zK9BoqmoL7wLKH\r\nJ/Z5UzFHj2wMNAywtyfj0YoqCQ/mMv6KNN4IRNYGZ6QKjW518Ba8H6crRxLY\r\nGnPOjGz7eRgS3ZVeQJijvx+lkobKNp363zybO2JMRyjTehbMq+6tqReSipZ/\r\nWIcBoR4gzt61kcl0BJeJKGRdxJBwMlXPnI4=\r\n=aveo\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"bentoprojectbot","email":"bentobot@amp.dev"},"directories":{},"maintainers":[{"name":"bentoprojectbot","email":"bentobot@amp.dev"},{"name":"kristoferbaxter","email":"kbax@me.com"},{"name":"esth","email":"esther@amp.dev"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/date-display_1.2208172101.0_1661374492079_0.9720870325380142"},"_hasShrinkwrap":false},"1.2208242209.0":{"name":"@bentoproject/date-display","version":"1.2208242209.0","description":"Displays time data that you can render in your page.","author":{"name":"Bento Authors"},"license":"Apache-2.0","main":"./dist/web-component.js","module":"./dist/web-component.module.js","exports":{".":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./web-component":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./preact":{"import":"./dist/component-preact.module.js","require":"./dist/component-preact.js"},"./react":{"import":"./dist/component-react.module.js","require":"./dist/component-react.js"},"./web-component.css":"./dist/web-component.css"},"repository":{"type":"git","url":"git+https://github.com/ampproject/amphtml.git","directory":"extensions/amp-date-display/1.0"},"homepage":"https://github.com/ampproject/amphtml/tree/main/extensions/amp-date-display/1.0","peerDependencies":{"preact":"^10.2.1","react":"^17.0.0"},"dependencies":{"@bentoproject/core":"0.2208242209.0"},"gitHead":"0775e3db3f5e3447749a9de6b4ef38433f6db4d3","bugs":{"url":"https://github.com/ampproject/amphtml/issues"},"_id":"@bentoproject/date-display@1.2208242209.0","_nodeVersion":"16.16.0","_npmVersion":"8.11.0","dist":{"integrity":"sha512-ZtrAEVLpLM8SU1qbgBvLHUC9UECuvx+XVc6v83Up4sKUcfHxoyyWDkbohD6qJZYolYH7MkSwpTL/0QHbPQ4Q+g==","shasum":"fe418f8912c57a668f089eb4837672d52ae5c35d","tarball":"https://registry.npmjs.org/@bentoproject/date-display/-/date-display-1.2208242209.0.tgz","fileCount":29,"unpackedSize":677013,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCd+qWWA9qmaZFe+db1TpbuHeosNDkq2lv/i8/fpqAtWAIhAKfRAYphTedROB+/Do8SMTJaYPY44l+Y+7IU52PqlPbm"}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjBzJDACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmoBzBAAkrcSDuvARnJ5eWnqBqNdbe31MQ4+2GgyYPEim4ujPTfMieK2\r\nO0ow8X9L752FxgimQE8DyhSfcbIN/ji5M3Zjpu9xknaiGv+aCIGx/Zc4TsqM\r\nZTQrZzejsxQTkVo7Vf2nX85EmJz80BFoQr60D6dL5FF8laao6WEu8O5x2LpL\r\nZSUxdDhnJINs2pWI8OpCbUjYZ9EK9RMCbYUpNZL0lAhpum0+yqIuhDQaGLuU\r\n9PECYG9WKzW3t18n0zxWmMVOy3mUXTatcPiQesTRbUSUN9aKKnDaa7QapP34\r\nJV5zujmhtjpqo8YDqKcxzl5JTWHth2hjbAZ5fA3o8Y6jBQJMDyX6nnSkJPNz\r\nIKf9fRFYNQGL7NNJrllicVDk8xBFyuYMDkG3KidnOFm2KHzeSF8OisswKkwc\r\nh126JIAhHGxehQmhpJXeR1aLTv0WRYXWJnb72CCzRQKHq8xOmya8ydkXKmmS\r\nDE6GJkara4qbeliqpumfPwJmst5wI1RVUDV0VDZNGaNwdTupF9alwmo/4t9G\r\nUo5rfr0FWjF745tAq3XYoWCzTlDMN2QAQgG97PyfwcgL73l9kozsiKfJLnyE\r\nauV9H1pyXyqqSsWlIhiBCR0sUlw9aHk4AfNS5k6e4TyfJ13lhSg+JAHMk7TW\r\n6Hhle6kTNX58up39IKzapQfA3IlFwUNaH3g=\r\n=D56m\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"bentoprojectbot","email":"bentobot@amp.dev"},"directories":{},"maintainers":[{"name":"bentoprojectbot","email":"bentobot@amp.dev"},{"name":"kristoferbaxter","email":"kbax@me.com"},{"name":"esth","email":"esther@amp.dev"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/date-display_1.2208242209.0_1661416003577_0.5442738049920293"},"_hasShrinkwrap":false},"1.2209072154.0":{"name":"@bentoproject/date-display","version":"1.2209072154.0","description":"Displays time data that you can render in your page.","author":{"name":"Bento Authors"},"license":"Apache-2.0","main":"./dist/web-component.js","module":"./dist/web-component.module.js","exports":{".":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./web-component":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./preact":{"import":"./dist/component-preact.module.js","require":"./dist/component-preact.js"},"./react":{"import":"./dist/component-react.module.js","require":"./dist/component-react.js"},"./web-component.css":"./dist/web-component.css"},"repository":{"type":"git","url":"git+https://github.com/ampproject/amphtml.git","directory":"extensions/amp-date-display/1.0"},"homepage":"https://github.com/ampproject/amphtml/tree/main/extensions/amp-date-display/1.0","peerDependencies":{"preact":"^10.2.1","react":"^17.0.0"},"dependencies":{"@bentoproject/core":"0.2209072154.0"},"gitHead":"b0743385edcd11eb02b6e380c4fb5a18793960fe","bugs":{"url":"https://github.com/ampproject/amphtml/issues"},"_id":"@bentoproject/date-display@1.2209072154.0","_nodeVersion":"16.17.0","_npmVersion":"8.15.0","dist":{"integrity":"sha512-pyrnARton3DIbV80mQWUPNwWsqsMAM2f/PUmybD1w203p7kK6aGX6mkoBdb7KwjApdBE06j7PgnaHFdc+IYwNw==","shasum":"bc344398fcdcb0ec2d6f50a3d338b2bc6d669b64","tarball":"https://registry.npmjs.org/@bentoproject/date-display/-/date-display-1.2209072154.0.tgz","fileCount":29,"unpackedSize":677013,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIFisqLmy/4WLDu54U8dWYVmbIw+DoTaP01JNzTHcic2UAiEA+DPNQzo0wtk+iEPnq3+wec/Wt5VM42j5FwfZ3bQTUxs="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjGabQACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmq6fA/+KVw+9AS5WXU9AtJOcgxFQGRT3B4IpekTVuQotUQd0UzXJAJI\r\nlzzJYgm7SfznTOj+4hbIvBTK7EoxCVIPfFU5idR3tX8cSqQC9KdFIPvIRlVI\r\n7i0tpttfESP77fwiRzPFokp2WMZrZocha7QU6Fq9ScEBMxh5PvbiRhcPP0Pi\r\nUF41i6m5ZEXA4mcJgx/OqjAjpB0GaZ8JfDJrm8bItDlQkGQTRSJKHIVfyP6t\r\nXzoiXt58pmyULq8Dtbj18m2JcLmiQu57z9hKnXbxSjuYyzIW3WUh0FPQyGpM\r\nsJS+8JUiDh6s5hFtZrEqwgssmEyHFfJI27I5bFCo3ZfbJIxlvp8U23RPPIYF\r\nGd6dGaJGqm46kDE90wS5vnwJ+45AUiJHDJiFoxyw/rPTF1XjvyaAmk/5Fi/y\r\nYlv0oLDET5E7DMftvHQB+4B84SNctta3xOXjCvDTivvDSKOXx2QZE29eIurj\r\nsQjv+Irmcicww8lWhXWMp2PO0k37HmjiPi1d6UzAkQnJ2RIMHkQdigwDcpNd\r\nu0makxUThrAKYMF1C7FMl4+Z+mhQuVV3/COmZle1lDjNxiIXqmDy84GMToKg\r\ngVleprldUZ1ldScL9W7T6DOD7oZowTd6SIb80E2YDDlA3B2CfY1GxqLZPbZH\r\no62O/bIWxVMON6D128115t4dniK7JErbBh4=\r\n=oiby\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"bentoprojectbot","email":"bentobot@amp.dev"},"directories":{},"maintainers":[{"name":"bentoprojectbot","email":"bentobot@amp.dev"},{"name":"kristoferbaxter","email":"kbax@me.com"},{"name":"esth","email":"esther@amp.dev"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/date-display_1.2209072154.0_1662625488072_0.8682483726898909"},"_hasShrinkwrap":false},"1.2209131909.0":{"name":"@bentoproject/date-display","version":"1.2209131909.0","description":"Displays time data that you can render in your page.","author":{"name":"Bento Authors"},"license":"Apache-2.0","main":"./dist/web-component.js","module":"./dist/web-component.module.js","exports":{".":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./web-component":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./preact":{"import":"./dist/component-preact.module.js","require":"./dist/component-preact.js"},"./react":{"import":"./dist/component-react.module.js","require":"./dist/component-react.js"},"./web-component.css":"./dist/web-component.css"},"repository":{"type":"git","url":"git+https://github.com/ampproject/amphtml.git","directory":"extensions/amp-date-display/1.0"},"homepage":"https://github.com/ampproject/amphtml/tree/main/extensions/amp-date-display/1.0","peerDependencies":{"preact":"^10.2.1","react":"^17.0.0"},"dependencies":{"@bentoproject/core":"0.2209131909.0"},"readme":"# Bento Date Display\n\nDisplays time data that you can render in your page. By providing specific [attributes](#attributes) in the Bento Date Display tag, the Bento Date Display extension returns a list of time parameters, which you can pass to [an amp-mustache template](../../amp-mustache/amp-mustache.md) for rendering. Refer to the [list below for each returned time parameter](#returned-time-parameters).\n\n## Web Component\n\nYou must include each Bento component's required CSS library to guarantee proper loading and before adding custom styles. Or use the light-weight pre-upgrade styles available inline. See [Layout and style](#layout-and-style).\n\n### Example: Import via npm\n\nInstall via npm:\n\n```sh\nnpm install @bentoproject/bento-date-display\n```\n\n```javascript\nimport {defineElement as defineBentoDateDisplay} from '@bentoproject/bento-date-display';\ndefineBentoDateDisplay();\n```\n\n### Include via `<script>`\n\n```html\n<script type=\"module\" src=\"https://cdn.ampproject.org/bento.mjs\" crossorigin=\"anonymous\"></script>\n<script nomodule src=\"https://cdn.ampproject.org/bento.js\" crossorigin=\"anonymous\"></script>\n<!-- Include bento-mustache.js to use mustache templates with this component -->\n<script async src=\"https://cdn.ampproject.org/v0/bento-mustache.js\"></script>\n<script type=\"module\" src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.mjs\" crossorigin=\"anonymous\"></script>\n<script nomodule src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.js\" crossorigin=\"anonymous\"></script>\n<link rel=\"stylesheet\" href=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.css\" crossorigin=\"anonymous\">\n```\n\n### Example\n\n```html\n<!DOCTYPE html>\n<html>\n  <head>\n    <script\n      type=\"module\"\n      async\n      src=\"https://cdn.ampproject.org/bento.mjs\"\n    ></script>\n    <script nomodule src=\"https://cdn.ampproject.org/bento.js\"></script>\n    <script async src=\"https://cdn.ampproject.org/v0/bento-mustache.js\"></script>\n    <script\n      type=\"module\"\n      async\n      src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.mjs\"\n    ></script>\n    <script\n      nomodule\n      async\n      src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.js\"\n    ></script>\n    <link\n      rel=\"stylesheet\"\n      type=\"text/css\"\n      href=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.css\"\n    />\n  </head>\n  <body>\n    <bento-date-display\n      datetime=\"2021-09-09T16:02:08.494Z\"\n      displayIn=\"utc\"\n      locale=\"en-GB\"\n    >\n      <template>\n        <div>ISO: {{iso}}; locale: {{localeString}}</div>\n      </template>\n    </bento-date-display>\n  </body>\n</html>\n```\n\n### Interactivity and API usage\n\nThe Bento Date Display component does not have an imperative API. However, the Bento Date Display Web Component will render a mustache-template, provided by the consumer in a `<template>` tag with `type=\"amp-mustache\"`. This template may interpolate date-related parameters. See the [Returned Time Parameters section](#returned-time-parameters) for a full list of all the available parameters.\n\n### Layout and style\n\nEach Bento component has a small CSS library you must include to guarantee proper loading without [content shifts](https://web.dev/cls/). Because of order-based specificity, you must manually ensure that stylesheets are included before any custom styles.\n\n```html\n<link rel=\"stylesheet\" type=\"text/css\" href=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.css\">\n```\n\nAlternatively, you may also make the light-weight pre-upgrade styles available inline:\n\n```html\n<style data-bento-boilerplate>\n  bento-date-display {\n    display: block;\n    overflow: hidden;\n    position: relative;\n  }\n</style>\n```\n\n### Attributes\n\n#### `datetime`\n\nThe `datetime` attribute specifies the date and time in a standard ISO 8601 date\nstring (e.g. 2017-08-02T15:05:05.000Z) or the string `now`. If set to `now`,\n`bento-date-display` will use the time the page loaded to render its template.\n\n#### `timestamp-ms`\n\nThe `timestamp-ms` attribute specifies the date and time using the number of\nmilliseconds since 1970-01-01T0:00:00.000Z\n\n#### `timestamp-seconds`\n\nThe `timestamp-seconds` attribute specifies the date and time using the number\nof seconds since 1970-01-01T0:00:00.000Z\n\n#### `locale` (optional)\n\nAn internationalization language string for each timer unit. The default value\nis `en` (for English). This attribute supports all values that are supported by\nthe user's browser.\n\n#### `display-in` (optional)\n\nIf set to the value `utc`, the `display-in` attribute will convert the given\ndate to UTC.\n\n#### `offset-seconds` (optional)\n\nThe `offset-seconds` attribute specifies an integer number of seconds to shift\nthe given date.\n\n#### `data-options-\\*` (optional)\n\nThe `data-options-*` supports all the options under [Intl.DateTimeFormat.options](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/DateTimeFormat#parameters)\nparameter that specifies the formatting style to use for `localeString` format.\nValid attributes include: `data-options-date-style`, `data-options-time-style`, etc.\n\nNote that if `display-in` attrubute is set to `utc`, the value of\n`data-options-time-zone` will automatically be converted to `UTC`.\n\n### Styling\n\nYou may use the `bento-date-display` element selector to style the Bento Date Display component freely.\n\n---\n\n## Preact/React Component\n\n### Import via npm\n\n```sh\nnpm install @bentoproject/date-display\n```\n\n```javascript\nimport React from 'react';\nimport {BentoDateDisplay} from '@bentoproject/date-display/react';\nimport '@bentoproject/date-display/styles.css';\n\nfunction App() {\n  return (\n    <BentoDateDisplay\n      datetime={dateTime}\n      displayIn={displayIn}\n      locale={locale}\n      render={(date) => (\n        <div>{`ISO: ${date.iso}; locale: ${date.localeString}`}</div>\n      )}\n    />\n  );\n}\n```\n\n### Interactivity and API usage\n\nThe Bento Date Display component does not have an imperative API. However, the Bento Date Display Preact/React component does accept a `render` prop that renders the consumer's template. This `render` prop should be a function which the Bento Date Display Preact/React component can use to render its template. The `render` callback will be provided a variety of date-related parameters for consumers to interpolate in the rendered template. See the [`render` prop section](#render) for more information.\n\n### Layout and style\n\nThe Bento Date Display Preact/React component allows consumers to render their own templates. These templates may use inline styles, `<style>` tags, Preact/React components that import their own stylesheets.\n\n### Props\n\n#### `datetime`\n\nRequired prop. Denotes the date and time as a Date, String, or Number. If String, must be a standard ISO 8601 date string (e.g. 2017-08-02T15:05:05.000Z) or the string `now`. If set to `now`, it will use the time the page loaded to render its template. If Number, must be a POSIX epoch value in milliseconds.\n\n#### `displayIn`\n\nOptional prop that can be either `\"utc\"` or `\"local\"` and defaults to `\"local\"`. This prop indicates what timezone to display the date in. If set to the value `\"utc\"`, the component will convert the given date to UTC.\n\n#### `locale`\n\nAn internationalization language string for each timer unit. The default value is `en` (for English). This prop supports all values that are supported by the user's browser.\n\n#### `localeOptions`\n\nThe `localeOptions` object supports all the options under [Intl.DateTimeFormat.options](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/DateTimeFormat#parameters) parameter that specifies the formatting style to use for `localeString` format.\n\nNote that if the `displayIn` prop is set to `utc`, the value of `localeOptions.timeZone` will automatically be converted to `UTC`.\n\n#### `render`\n\nOptional callback that should render a template. The callback will be provided an object with properties/values related to the date expressed in `datetime`.\n\nBy default, the Bento Date Display component will display the [`localeString` form of the Date](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/toLocaleString) for the given locale and localeOption. See the [Returned Time Parameters section](#returned-time-parameters) for more details on how each property will be displayed.\n\n```typescript\n(dateParams: DateParams) => JSXInternal.Element\ninterface DateParams {\n  day: number;\n  dayName: string;\n  dayNameShort: string;\n  dayPeriod: string;\n  dayTwoDigit: string;\n  hour: number;\n  hour12: number;\n  hour12TwoDigit: string;\n  hourTwoDigit: string;\n  iso: string;\n  localeString: string;\n  minute: number;\n  minuteTwoDigit: string;\n  month: number;\n  monthName: string;\n  monthNameShort: string;\n  monthTwoDigit: string;\n  second: number;\n  secondTwoDigit: string;\n  timeZoneName: string;\n  timeZoneNameShort: string;\n  year: number;\n  yearTwoDi: string;\n}\n```\n\n### Returned Time Parameters\n\nThis table lists the format you can specify in your Mustache template:\n\n| Format            | Meaning                                                       |\n| ----------------- | ------------------------------------------------------------- |\n| day               | 1, 2, ...12, 13, etc.                                         |\n| dayName           | string,                                                       |\n| dayNameShort      | string,                                                       |\n| dayPeriod         | string,                                                       |\n| dayTwoDigit       | 01, 02, 03, ..., 12, 13, etc.                                 |\n| hour              | 0, 1, 2, 3, ..., 12, 13, ..., 22, 23                          |\n| hour12            | 1, 2, 3, ..., 12, 1, 2, ..., 11, 12                           |\n| hour12TwoDigit    | 01, 02, ..., 12, 01, 02, ..., 11, 12                          |\n| hourTwoDigit      | 00, 01, 02, ..., 12, 13, ..., 22, 23                          |\n| iso               | A standard ISO8601 date string e.g. 2019-01-23T15:31:21.213Z, |\n| localeString      | A string with a language sensitive representation.            |\n| minute            | 0, 1, 2, ..., 58, 59                                          |\n| minuteTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| month             | 1, 2, 3, ..., 12                                              |\n| monthName         | Internationalized month name string.                          |\n| monthNameShort    | Internationalized abbreviated month name string.,             |\n| monthTwoDigit     | 01, 02, ..., 11, 12                                           |\n| second            | 0, 1, 2, ..., 58, 59                                          |\n| secondTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| timeZoneName      | Internationalized timezone, like `Pacific Daylight Time`      |\n| timeZoneNameShort | Internationalized timezone, abbreviated, like `PST`           |\n| year              | 0, 1, 2, ..., 1999, 2000, 2001, etc.                          |\n| yearTwoDigit      | 00, 01, 02, ..., 17, 18, 19, ..., 98, 99                      |\n","readmeFilename":"README.md","gitHead":"b912a3976adc47e6a81ae645cb98e51d1e778150","bugs":{"url":"https://github.com/ampproject/amphtml/issues"},"_id":"@bentoproject/date-display@1.2209131909.0","_nodeVersion":"16.17.0","_npmVersion":"8.15.0","dist":{"integrity":"sha512-EnNVhp87STsxJZBtVNaIExCi6SWGcrk0Gdg4F1c0riG7T6USRNY7K1yG881bySQ7v0bdXZDzcm1k4p0fuCPogQ==","shasum":"ffeadf1d0ff6cd98cdb412147734012c8b209e53","tarball":"https://registry.npmjs.org/@bentoproject/date-display/-/date-display-1.2209131909.0.tgz","fileCount":29,"unpackedSize":677013,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDskqhZcYSv97f0QwOCjDb8F9VrHxTQo+5diUjX6JPNagIhAMlWx8m/QCoPQcgZmgZSESku03Ihqso8hx3jZsc/w7/F"}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjIZQ2ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmo3/w/9Ggc6AKDdJGvIqz/7TvOfhtvvPU+N7eXNk5Zs9H1XhvkN9Ft3\r\nGcGzH8/nqKPA45sw9ZMEcq+J6fp5jEA/B+CL1LZQvSdIr7tgfoPXoiLMYCgl\r\nGUF5Jlft+lrdtgLSAUe9Wkl7/7SeXPz0TcFqY9r1WVNPRASbVtofL2JW0GeY\r\nj8hnVw78N7mzz+F+WIwgSvDYzfqL4gpgvjvDoq3CXt40/RRZHIA/nGYufcjj\r\nAOccvSlg1XIiB9w/vaJm+G2UwJE0d4Ri/PmaamI3HfRFeR74vm4zVoBQynb/\r\ncFSkOqBBBHwCpvMr7NWnhIfC8I10e1Y3b26hvddRcJQr3eryFLGQnMy4TB3a\r\nKvolgwdHcdXLyMluRCWPAlYkHZf7Gr1WiYTVuglqPpCjnugL2qE0Hj8oal5K\r\nomWnvdRBriDquOXP3/FQbVtOsZj8M9je9W1NnoYufMD6OQEHIO63IVQKSE+v\r\np1zfR8d0r170EuDDafrw+1yyWDb3spQBzUuOiDANchOsbacMvxwxaHoYvpbJ\r\nKxMZDq2Bk4NZuWLmzZjjZJ9nAPhv2LiDcVg4mY+dzAgRA4ReHll44DuDRPjZ\r\nD10JskpGmdP+pb/Vj2TNXNyKrd9u/YE7nK4SuQIlxjwQl0wtoUHVwRe6nW2C\r\nVYxU0+uhK9U7GGmO6B+ulTFQXhkhH6S6ikM=\r\n=2rxq\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"bentoprojectbot","email":"bentobot@amp.dev"},"directories":{},"maintainers":[{"name":"bentoprojectbot","email":"bentobot@amp.dev"},{"name":"kristoferbaxter","email":"kbax@me.com"},{"name":"esth","email":"esther@amp.dev"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/date-display_1.2209131909.0_1663145014727_0.29767546297332625"},"_hasShrinkwrap":false},"1.2208242209.1":{"name":"@bentoproject/date-display","version":"1.2208242209.1","description":"Displays time data that you can render in your page.","author":{"name":"Bento Authors"},"license":"Apache-2.0","main":"./dist/web-component.js","module":"./dist/web-component.module.js","exports":{".":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./web-component":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./preact":{"import":"./dist/component-preact.module.js","require":"./dist/component-preact.js"},"./react":{"import":"./dist/component-react.module.js","require":"./dist/component-react.js"},"./web-component.css":"./dist/web-component.css"},"repository":{"type":"git","url":"git+https://github.com/ampproject/amphtml.git","directory":"extensions/amp-date-display/1.0"},"homepage":"https://github.com/ampproject/amphtml/tree/main/extensions/amp-date-display/1.0","peerDependencies":{"preact":"^10.2.1","react":"^17.0.0"},"dependencies":{"@bentoproject/core":"0.2208242209.1"},"gitHead":"a64b6c7fbfdfb75c935b112118bddb3fff58ba57","bugs":{"url":"https://github.com/ampproject/amphtml/issues"},"_id":"@bentoproject/date-display@1.2208242209.1","_nodeVersion":"16.17.0","_npmVersion":"8.15.0","dist":{"integrity":"sha512-OmIOK+VnuWCGiofUvfT3xgjNZ+ZqTDMzxJ8xTq0jOUzz2pN00zgUEqj3lvOCh7iaq54kEMyFhHyyGm6cJIMGbw==","shasum":"7eefb7ff225e9a08fb35c46704f1f40581c03e60","tarball":"https://registry.npmjs.org/@bentoproject/date-display/-/date-display-1.2208242209.1.tgz","fileCount":29,"unpackedSize":677013,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCICh6EUY2zjBjKuK8cnvqq+PXsgJgZDAgh/xKPHCt+5o+AiEAhfcv5pW0FrxuKrZDXNA+Jfw3+YvnFO87dgVC3mPErQE="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjI1XNACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqyrQ/7B2CURtB5bkhWL4JNySy8IvVZtH6jrTtdZ6rg0OVaxjGBK6cU\r\n9xW12IYXwj1CxSOMqOYuj5Lvtg8mpSg45EcQd4lCGNxUg/N4lIwWzVlc0bdu\r\necVI8HFoBafKwiUcR/DCNkRKz3mZlNm2QoypM8cvYseLbpCXWSsth/AUmugg\r\nW1aEr0yLfRm8EipDFxy3nMWpouRRIZBMFFiuIbjJXQnm+lluFOiz/6brZKDt\r\nqP1Ktfnn+GZuFEr69SkGGNgUfPrEBnEBKiibM/CeXZ0dKLD/Ng+aQlos0lQo\r\nwEvzRSVIpx/wmLNoT+ROr+/2X5H9DJyUYKZPXL+JpiStLrqO4PTjvQCcxZRl\r\ntEqQLF7yf2YUC8OLt9uNVpIsLjZRspm6lmavkenum08b/ci/ZxzV+OnG4UmY\r\nnN2BYqXdwX7p1uq9OMunpaZv9NZphqmn1c8XMPf3QjUx6FEUd7FiuFGF2qO+\r\nLyKMeG/EAzNj4cDfhq+0cXeZKPVHXKN8AX1Zjy1H8wNttEJEHhg6iJbraG42\r\nLKePsIFzx5Wqwm38XOaSVZoINghJw3lAz1AWDr4VQG9gOKQ+lNDK7rRSzpwT\r\nS2Fxt4yvuOk8r/uzqvPr4dA+JhzP5xK/M+297AVAclj4oPcozNCShSwdTJDb\r\npuGyIk5kiBXuIQW98uXDcM3UgSjDPqTFrhg=\r\n=Xo49\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"bentoprojectbot","email":"bentobot@amp.dev"},"directories":{},"maintainers":[{"name":"bentoprojectbot","email":"bentobot@amp.dev"},{"name":"kristoferbaxter","email":"kbax@me.com"},{"name":"esth","email":"esther@amp.dev"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/date-display_1.2208242209.1_1663260109248_0.868976564380332"},"_hasShrinkwrap":false},"1.2209142312.0":{"name":"@bentoproject/date-display","version":"1.2209142312.0","description":"Displays time data that you can render in your page.","author":{"name":"Bento Authors"},"license":"Apache-2.0","main":"./dist/web-component.js","module":"./dist/web-component.module.js","exports":{".":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./web-component":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./preact":{"import":"./dist/component-preact.module.js","require":"./dist/component-preact.js"},"./react":{"import":"./dist/component-react.module.js","require":"./dist/component-react.js"},"./web-component.css":"./dist/web-component.css"},"repository":{"type":"git","url":"git+https://github.com/ampproject/amphtml.git","directory":"extensions/amp-date-display/1.0"},"homepage":"https://github.com/ampproject/amphtml/tree/main/extensions/amp-date-display/1.0","peerDependencies":{"preact":"^10.2.1","react":"^17.0.0"},"dependencies":{"@bentoproject/core":"0.2209142312.0"},"gitHead":"8484b3b1dc31fb138a231b2368acfe2cb4eb913d","bugs":{"url":"https://github.com/ampproject/amphtml/issues"},"_id":"@bentoproject/date-display@1.2209142312.0","_nodeVersion":"16.17.0","_npmVersion":"8.15.0","dist":{"integrity":"sha512-gknb99VYmfMGaYoPBB1rge0dClQGKf7sC7YLE6/qkbY5fS57vaml3fP1BWbl2nqTbprBpGd1Ysb2d+vuSsrY7Q==","shasum":"52d5f04c628545589df943d06842c82715b2522f","tarball":"https://registry.npmjs.org/@bentoproject/date-display/-/date-display-1.2209142312.0.tgz","fileCount":29,"unpackedSize":677013,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIGBmgJBEDCbHve+1CCPxNqKNED27tQxYRHiWXa34Z0NcAiEA6rIgKke5KRBncOEJnJlR6ocLc0PY8Ob2PO0oDZ+H1R4="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjKjmgACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqpVw//ewHx3KD9I2eUYSNukz+dU9v7kp1s/SIAFADczxPjUe49Eqcs\r\nnTbLv7AoJw5rKY6D+mPrpdjGCvS5u13Rzuz4dCtZjZl/9uEPzQ6RR70k0PPK\r\ngIPPHI91QBaEp+W7SaYR0jlVDFYTRbeWq1pt1f5tmxmB33gqr54JWoyb5925\r\n87At+2cyemlZQpiBjTSHLh5MpkPJ0UWSYvJzaLmfMghq1phafRuUp9DcApCN\r\n7FaORWNUBXQjf0/W9YbE0mAjvWOebIxHDcUmTk+XfcX1rdV48dAHdnPrdKIp\r\nUNx1qtndqj864Mm9NVIYI0xzo20iL0EiunGYWedaFfB83eh3Ek6hF8XJrCeZ\r\nDgNgQzeRsNvM98EZ00gaPI+YRn4+En6MEVM3kU7Zi1VZfE14Cws3AA8/jn4t\r\nxNuokJWyOvb4UgxJTrP2/J5w2R7iUAUKjIM0RwsoOYpwcS/SSCieul+2t5lw\r\nWoDhurd2YbXAzM5FaWFTTceyZRXzKcBx3SVCzer/ZN5CZXeqJKmLzlyvQRVW\r\nh6z/TGd63gg6GBXPSNzqRhkYZaWRgSJWlYC9jIxNX/GLNoDxnNLduuaxijjA\r\nFukZZIYWlIDGOJfTagl4VDpevdbexqeDxOmqfuT5Ev+FJOXVDNlLEVlUX+28\r\ns4OE66JQ1zvhYj699JnZ4t88rMPnj1Q1Cws=\r\n=OvC+\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"bentoprojectbot","email":"bentobot@amp.dev"},"directories":{},"maintainers":[{"name":"bentoprojectbot","email":"bentobot@amp.dev"},{"name":"kristoferbaxter","email":"kbax@me.com"},{"name":"esth","email":"esther@amp.dev"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/date-display_1.2209142312.0_1663711648043_0.1202130436318134"},"_hasShrinkwrap":false},"1.2210010655.0":{"name":"@bentoproject/date-display","version":"1.2210010655.0","description":"Displays time data that you can render in your page.","author":{"name":"Bento Authors"},"license":"Apache-2.0","main":"./dist/web-component.js","module":"./dist/web-component.module.js","exports":{".":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./web-component":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./preact":{"import":"./dist/component-preact.module.js","require":"./dist/component-preact.js"},"./react":{"import":"./dist/component-react.module.js","require":"./dist/component-react.js"},"./web-component.css":"./dist/web-component.css"},"repository":{"type":"git","url":"git+https://github.com/ampproject/amphtml.git","directory":"extensions/amp-date-display/1.0"},"homepage":"https://github.com/ampproject/amphtml/tree/main/extensions/amp-date-display/1.0","peerDependencies":{"preact":"^10.2.1","react":"^17.0.0"},"dependencies":{"@bentoproject/core":"0.2210010655.0"},"gitHead":"b0c5acce5be2019b787b6f4bf7feb13b045ca7ff","bugs":{"url":"https://github.com/ampproject/amphtml/issues"},"_id":"@bentoproject/date-display@1.2210010655.0","_nodeVersion":"16.17.0","_npmVersion":"8.15.0","dist":{"integrity":"sha512-rU9MQPV0kaD9P7RjOYhm5Vemgt8kOOz+qquyQIPMqmUMGC7+sJkN4wcdXP0xsH5s+GFaP+n2sEFY54Aryy8p9Q==","shasum":"1ebf0be5a899bae0d5e9bb0c560c7a12f3cb6f9c","tarball":"https://registry.npmjs.org/@bentoproject/date-display/-/date-display-1.2210010655.0.tgz","fileCount":29,"unpackedSize":677013,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIEl4lPfnX7xLMTn7kVioCpmMfDCRBTE1BezP9dEq1ymgAiB4GiwRDj838IXbTNVun1UEv3jx1WMvnXNA1VP5H1ubKQ=="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjPGQFACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmojmA/+MbvtgRKYab4QiStxM8W3tIFRB8cD9p/ZpfFDaqA3ZJwLBZJY\r\nm4mC32lQXgHpxcPfMeaH+ZOkqHSCDX7PDN8ttCWsubK2iw0Lbx1ajO5xWYLx\r\njQnbwNa5sRE5cBxE+on5wGCSfVOBfkwyCu9gEe+kCCRnG9Vt28XQgTw4HSTH\r\n1GQQ8RMjKFhP6Q4qqlapKORAZX2UvVho+AGqe0h1sDTujcfiAvyZNnDyzr8R\r\nGWelerJYPVsYpEwGHFIw1tqalkkcW7HPStlmhzCW74lU8LpFw5ejfI6Xk+md\r\nNtOGVRVsBPP3/e4E2isih0Lp0f4y85pzUUCqWhPIjipBtqJ13+sDWkqsqIPs\r\nYD2k3O8DNcPZwuy2th0NmiVdInZQwsnsO+cjHHZFhhizciZYF1NWgV4PTgOi\r\nW+IKqnMiXTTcua5yoNAb1/meXGrjOvKhsNn91siSZrby8uLctun2zfsu2p7I\r\n72Cfjb2Z7ql+iIu0UPDTV3AZndqjgaGJ2/uuKxB3k5Jev45lKXckWiMhRYEJ\r\nw7exfgugZWzSF92vB71YuvzS+DfTITdbq5BD7Eoo2DJHhIjq5iBTCeWXR+pY\r\n322oBDxJgTp+6ylhUqquAro6wyFZsYZrESC6Q6A+jRVU8npQdp2/vTKP9scI\r\ngVAZMxce+VBnUZvWt0JB20eK8PcpeoYU3KM=\r\n=kL1O\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"bentoprojectbot","email":"bentobot@amp.dev"},"directories":{},"maintainers":[{"name":"bentoprojectbot","email":"bentobot@amp.dev"},{"name":"kristoferbaxter","email":"kbax@me.com"},{"name":"esth","email":"esther@amp.dev"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/date-display_1.2210010655.0_1664902148818_0.7983725432882658"},"_hasShrinkwrap":false},"1.2210041838.0":{"name":"@bentoproject/date-display","version":"1.2210041838.0","description":"Displays time data that you can render in your page.","author":{"name":"Bento Authors"},"license":"Apache-2.0","main":"./dist/web-component.js","module":"./dist/web-component.module.js","exports":{".":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./web-component":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./preact":{"import":"./dist/component-preact.module.js","require":"./dist/component-preact.js"},"./react":{"import":"./dist/component-react.module.js","require":"./dist/component-react.js"},"./web-component.css":"./dist/web-component.css"},"repository":{"type":"git","url":"git+https://github.com/ampproject/amphtml.git","directory":"extensions/amp-date-display/1.0"},"homepage":"https://github.com/ampproject/amphtml/tree/main/extensions/amp-date-display/1.0","peerDependencies":{"preact":"^10.2.1","react":"^17.0.0"},"dependencies":{"@bentoproject/core":"0.2210041838.0"},"readme":"# Bento Date Display\n\nDisplays time data that you can render in your page. By providing specific [attributes](#attributes) in the Bento Date Display tag, the Bento Date Display extension returns a list of time parameters, which you can pass to [an amp-mustache template](../../amp-mustache/amp-mustache.md) for rendering. Refer to the [list below for each returned time parameter](#returned-time-parameters).\n\n## Web Component\n\nYou must include each Bento component's required CSS library to guarantee proper loading and before adding custom styles. Or use the light-weight pre-upgrade styles available inline. See [Layout and style](#layout-and-style).\n\n### Example: Import via npm\n\nInstall via npm:\n\n```sh\nnpm install @bentoproject/bento-date-display\n```\n\n```javascript\nimport {defineElement as defineBentoDateDisplay} from '@bentoproject/bento-date-display';\ndefineBentoDateDisplay();\n```\n\n### Include via `<script>`\n\n```html\n<script type=\"module\" src=\"https://cdn.ampproject.org/bento.mjs\" crossorigin=\"anonymous\"></script>\n<script nomodule src=\"https://cdn.ampproject.org/bento.js\" crossorigin=\"anonymous\"></script>\n<!-- Include bento-mustache.js to use mustache templates with this component -->\n<script async src=\"https://cdn.ampproject.org/v0/bento-mustache.js\"></script>\n<script type=\"module\" src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.mjs\" crossorigin=\"anonymous\"></script>\n<script nomodule src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.js\" crossorigin=\"anonymous\"></script>\n<link rel=\"stylesheet\" href=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.css\" crossorigin=\"anonymous\">\n```\n\n### Example\n\n```html\n<!DOCTYPE html>\n<html>\n  <head>\n    <script\n      type=\"module\"\n      async\n      src=\"https://cdn.ampproject.org/bento.mjs\"\n    ></script>\n    <script nomodule src=\"https://cdn.ampproject.org/bento.js\"></script>\n    <script async src=\"https://cdn.ampproject.org/v0/bento-mustache.js\"></script>\n    <script\n      type=\"module\"\n      async\n      src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.mjs\"\n    ></script>\n    <script\n      nomodule\n      async\n      src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.js\"\n    ></script>\n    <link\n      rel=\"stylesheet\"\n      type=\"text/css\"\n      href=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.css\"\n    />\n  </head>\n  <body>\n    <bento-date-display\n      datetime=\"2021-09-09T16:02:08.494Z\"\n      displayIn=\"utc\"\n      locale=\"en-GB\"\n    >\n      <template>\n        <div>ISO: {{iso}}; locale: {{localeString}}</div>\n      </template>\n    </bento-date-display>\n  </body>\n</html>\n```\n\n### Interactivity and API usage\n\nThe Bento Date Display component does not have an imperative API. However, the Bento Date Display Web Component will render a mustache-template, provided by the consumer in a `<template>` tag with `type=\"amp-mustache\"`. This template may interpolate date-related parameters. See the [Returned Time Parameters section](#returned-time-parameters) for a full list of all the available parameters.\n\n### Layout and style\n\nEach Bento component has a small CSS library you must include to guarantee proper loading without [content shifts](https://web.dev/cls/). Because of order-based specificity, you must manually ensure that stylesheets are included before any custom styles.\n\n```html\n<link rel=\"stylesheet\" type=\"text/css\" href=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.css\">\n```\n\nAlternatively, you may also make the light-weight pre-upgrade styles available inline:\n\n```html\n<style data-bento-boilerplate>\n  bento-date-display {\n    display: block;\n    overflow: hidden;\n    position: relative;\n  }\n</style>\n```\n\n### Attributes\n\n#### `datetime`\n\nThe `datetime` attribute specifies the date and time in a standard ISO 8601 date\nstring (e.g. 2017-08-02T15:05:05.000Z) or the string `now`. If set to `now`,\n`bento-date-display` will use the time the page loaded to render its template.\n\n#### `timestamp-ms`\n\nThe `timestamp-ms` attribute specifies the date and time using the number of\nmilliseconds since 1970-01-01T0:00:00.000Z\n\n#### `timestamp-seconds`\n\nThe `timestamp-seconds` attribute specifies the date and time using the number\nof seconds since 1970-01-01T0:00:00.000Z\n\n#### `locale` (optional)\n\nAn internationalization language string for each timer unit. The default value\nis `en` (for English). This attribute supports all values that are supported by\nthe user's browser.\n\n#### `display-in` (optional)\n\nIf set to the value `utc`, the `display-in` attribute will convert the given\ndate to UTC.\n\n#### `offset-seconds` (optional)\n\nThe `offset-seconds` attribute specifies an integer number of seconds to shift\nthe given date.\n\n#### `data-options-\\*` (optional)\n\nThe `data-options-*` supports all the options under [Intl.DateTimeFormat.options](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/DateTimeFormat#parameters)\nparameter that specifies the formatting style to use for `localeString` format.\nValid attributes include: `data-options-date-style`, `data-options-time-style`, etc.\n\nNote that if `display-in` attrubute is set to `utc`, the value of\n`data-options-time-zone` will automatically be converted to `UTC`.\n\n### Styling\n\nYou may use the `bento-date-display` element selector to style the Bento Date Display component freely.\n\n---\n\n## Preact/React Component\n\n### Import via npm\n\n```sh\nnpm install @bentoproject/date-display\n```\n\n```javascript\nimport React from 'react';\nimport {BentoDateDisplay} from '@bentoproject/date-display/react';\nimport '@bentoproject/date-display/styles.css';\n\nfunction App() {\n  return (\n    <BentoDateDisplay\n      datetime={dateTime}\n      displayIn={displayIn}\n      locale={locale}\n      render={(date) => (\n        <div>{`ISO: ${date.iso}; locale: ${date.localeString}`}</div>\n      )}\n    />\n  );\n}\n```\n\n### Interactivity and API usage\n\nThe Bento Date Display component does not have an imperative API. However, the Bento Date Display Preact/React component does accept a `render` prop that renders the consumer's template. This `render` prop should be a function which the Bento Date Display Preact/React component can use to render its template. The `render` callback will be provided a variety of date-related parameters for consumers to interpolate in the rendered template. See the [`render` prop section](#render) for more information.\n\n### Layout and style\n\nThe Bento Date Display Preact/React component allows consumers to render their own templates. These templates may use inline styles, `<style>` tags, Preact/React components that import their own stylesheets.\n\n### Props\n\n#### `datetime`\n\nRequired prop. Denotes the date and time as a Date, String, or Number. If String, must be a standard ISO 8601 date string (e.g. 2017-08-02T15:05:05.000Z) or the string `now`. If set to `now`, it will use the time the page loaded to render its template. If Number, must be a POSIX epoch value in milliseconds.\n\n#### `displayIn`\n\nOptional prop that can be either `\"utc\"` or `\"local\"` and defaults to `\"local\"`. This prop indicates what timezone to display the date in. If set to the value `\"utc\"`, the component will convert the given date to UTC.\n\n#### `locale`\n\nAn internationalization language string for each timer unit. The default value is `en` (for English). This prop supports all values that are supported by the user's browser.\n\n#### `localeOptions`\n\nThe `localeOptions` object supports all the options under [Intl.DateTimeFormat.options](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/DateTimeFormat#parameters) parameter that specifies the formatting style to use for `localeString` format.\n\nNote that if the `displayIn` prop is set to `utc`, the value of `localeOptions.timeZone` will automatically be converted to `UTC`.\n\n#### `render`\n\nOptional callback that should render a template. The callback will be provided an object with properties/values related to the date expressed in `datetime`.\n\nBy default, the Bento Date Display component will display the [`localeString` form of the Date](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/toLocaleString) for the given locale and localeOption. See the [Returned Time Parameters section](#returned-time-parameters) for more details on how each property will be displayed.\n\n```typescript\n(dateParams: DateParams) => JSXInternal.Element\ninterface DateParams {\n  day: number;\n  dayName: string;\n  dayNameShort: string;\n  dayPeriod: string;\n  dayTwoDigit: string;\n  hour: number;\n  hour12: number;\n  hour12TwoDigit: string;\n  hourTwoDigit: string;\n  iso: string;\n  localeString: string;\n  minute: number;\n  minuteTwoDigit: string;\n  month: number;\n  monthName: string;\n  monthNameShort: string;\n  monthTwoDigit: string;\n  second: number;\n  secondTwoDigit: string;\n  timeZoneName: string;\n  timeZoneNameShort: string;\n  year: number;\n  yearTwoDi: string;\n}\n```\n\n### Returned Time Parameters\n\nThis table lists the format you can specify in your Mustache template:\n\n| Format            | Meaning                                                       |\n| ----------------- | ------------------------------------------------------------- |\n| day               | 1, 2, ...12, 13, etc.                                         |\n| dayName           | string,                                                       |\n| dayNameShort      | string,                                                       |\n| dayPeriod         | string,                                                       |\n| dayTwoDigit       | 01, 02, 03, ..., 12, 13, etc.                                 |\n| hour              | 0, 1, 2, 3, ..., 12, 13, ..., 22, 23                          |\n| hour12            | 1, 2, 3, ..., 12, 1, 2, ..., 11, 12                           |\n| hour12TwoDigit    | 01, 02, ..., 12, 01, 02, ..., 11, 12                          |\n| hourTwoDigit      | 00, 01, 02, ..., 12, 13, ..., 22, 23                          |\n| iso               | A standard ISO8601 date string e.g. 2019-01-23T15:31:21.213Z, |\n| localeString      | A string with a language sensitive representation.            |\n| minute            | 0, 1, 2, ..., 58, 59                                          |\n| minuteTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| month             | 1, 2, 3, ..., 12                                              |\n| monthName         | Internationalized month name string.                          |\n| monthNameShort    | Internationalized abbreviated month name string.,             |\n| monthTwoDigit     | 01, 02, ..., 11, 12                                           |\n| second            | 0, 1, 2, ..., 58, 59                                          |\n| secondTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| timeZoneName      | Internationalized timezone, like `Pacific Daylight Time`      |\n| timeZoneNameShort | Internationalized timezone, abbreviated, like `PST`           |\n| year              | 0, 1, 2, ..., 1999, 2000, 2001, etc.                          |\n| yearTwoDigit      | 00, 01, 02, ..., 17, 18, 19, ..., 98, 99                      |\n","readmeFilename":"README.md","gitHead":"e79aecc1c4639b06a7f2843d961bb14f293a53ce","bugs":{"url":"https://github.com/ampproject/amphtml/issues"},"_id":"@bentoproject/date-display@1.2210041838.0","_nodeVersion":"16.17.0","_npmVersion":"8.15.0","dist":{"integrity":"sha512-KzDmshnQb+Y6QaGr03DpPo3Oaf3xqCGS++PyrNYNcBC1O7WpsU+t9Mvf0D8UmM5ToHFWsUC3IUyNhUARzvmeAw==","shasum":"93b0be9912a072ee9873af7d233494bd18070447","tarball":"https://registry.npmjs.org/@bentoproject/date-display/-/date-display-1.2210041838.0.tgz","fileCount":29,"unpackedSize":677013,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIHBldiM6n3QdC1hnn1QVwBNSGMyChPPr+IsCm2T6ZBWWAiEA2megFDePTsBFPLrpQRSm+klhPO+n4davcFtg2mT7s7g="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjPUBUACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrZHA//VStxodE+qVDauOit6SSwtYqTRUykyI/5qmuiLLPtkZEwXeua\r\n56C2XZDTE/KydE3grx7x0DzLJE9Ct8ti7WX7bKbTviQZofMgBHBifEW3QUCU\r\noWezM5hqY3++VyHIvDeGJ1Ldl6SFw34UkJzE88VeQAjcQcYwfTN/PKtv+4cV\r\nw4IWs/j01VnSa6IHsB4u5q1kZVLoT28+jf6g+EOXdq0KsO2WQd0thgrQ6yfq\r\n+LtFuboaDYhxsXmi2CbQQJMRebmjohYDdxIKQDOkRYZDYpE4IMq+pQmCAfjJ\r\nRiP9/BRMXYr8HpE4g8Cmf8ofBxY/r3UZKkkmR2eXRi7BQspreEUYkYAtCpET\r\nCTYr6r8s4tLHgwJVSclA7D3b2CcshxSqhiF8Fcbp01SKApfk1axoPcJrXtnI\r\ncz/DxAdqumeP2Rdp+wGztUj266rbE6Gf36BqM6S3ExlSWZR+HAKAmR9gcIza\r\n4IFIsWcbyJX6/6Jd7yQCF89rPtdJQb4xdtLKmkfonTGtuCuEVSHuboB82CDM\r\npbhg/MkZ++tFAKpZakj3dVbEv9crTNE2QTA6rTw6ZNj0Mt4ZA+qcNgQIaO0R\r\nk5fFmu25vQVlv9gcv2MWbaVEEE8dx5ItGSK5wnATU+EUaWR4EmsXtovLnCJp\r\nbGl24yrklxUaKeRIY+T8E1ttXcYel1ifiIQ=\r\n=/io9\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"bentoprojectbot","email":"bentobot@amp.dev"},"directories":{},"maintainers":[{"name":"bentoprojectbot","email":"bentobot@amp.dev"},{"name":"kristoferbaxter","email":"kbax@me.com"},{"name":"esth","email":"esther@amp.dev"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/date-display_1.2210041838.0_1664958548020_0.957518170640242"},"_hasShrinkwrap":false},"1.2210052034.0":{"name":"@bentoproject/date-display","version":"1.2210052034.0","description":"Displays time data that you can render in your page.","author":{"name":"Bento Authors"},"license":"Apache-2.0","main":"./dist/web-component.js","module":"./dist/web-component.module.js","exports":{".":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./web-component":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./preact":{"import":"./dist/component-preact.module.js","require":"./dist/component-preact.js"},"./react":{"import":"./dist/component-react.module.js","require":"./dist/component-react.js"},"./web-component.css":"./dist/web-component.css"},"repository":{"type":"git","url":"git+https://github.com/ampproject/amphtml.git","directory":"extensions/amp-date-display/1.0"},"homepage":"https://github.com/ampproject/amphtml/tree/main/extensions/amp-date-display/1.0","peerDependencies":{"preact":"^10.2.1","react":"^17.0.0"},"dependencies":{"@bentoproject/core":"0.2210052034.0"},"readme":"# Bento Date Display\n\nDisplays time data that you can render in your page. By providing specific [attributes](#attributes) in the Bento Date Display tag, the Bento Date Display extension returns a list of time parameters, which you can pass to [an amp-mustache template](../../amp-mustache/amp-mustache.md) for rendering. Refer to the [list below for each returned time parameter](#returned-time-parameters).\n\n## Web Component\n\nYou must include each Bento component's required CSS library to guarantee proper loading and before adding custom styles. Or use the light-weight pre-upgrade styles available inline. See [Layout and style](#layout-and-style).\n\n### Example: Import via npm\n\nInstall via npm:\n\n```sh\nnpm install @bentoproject/bento-date-display\n```\n\n```javascript\nimport {defineElement as defineBentoDateDisplay} from '@bentoproject/bento-date-display';\ndefineBentoDateDisplay();\n```\n\n### Include via `<script>`\n\n```html\n<script type=\"module\" src=\"https://cdn.ampproject.org/bento.mjs\" crossorigin=\"anonymous\"></script>\n<script nomodule src=\"https://cdn.ampproject.org/bento.js\" crossorigin=\"anonymous\"></script>\n<!-- Include bento-mustache.js to use mustache templates with this component -->\n<script async src=\"https://cdn.ampproject.org/v0/bento-mustache.js\"></script>\n<script type=\"module\" src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.mjs\" crossorigin=\"anonymous\"></script>\n<script nomodule src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.js\" crossorigin=\"anonymous\"></script>\n<link rel=\"stylesheet\" href=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.css\" crossorigin=\"anonymous\">\n```\n\n### Example\n\n```html\n<!DOCTYPE html>\n<html>\n  <head>\n    <script\n      type=\"module\"\n      async\n      src=\"https://cdn.ampproject.org/bento.mjs\"\n    ></script>\n    <script nomodule src=\"https://cdn.ampproject.org/bento.js\"></script>\n    <script async src=\"https://cdn.ampproject.org/v0/bento-mustache.js\"></script>\n    <script\n      type=\"module\"\n      async\n      src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.mjs\"\n    ></script>\n    <script\n      nomodule\n      async\n      src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.js\"\n    ></script>\n    <link\n      rel=\"stylesheet\"\n      type=\"text/css\"\n      href=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.css\"\n    />\n  </head>\n  <body>\n    <bento-date-display\n      datetime=\"2021-09-09T16:02:08.494Z\"\n      displayIn=\"utc\"\n      locale=\"en-GB\"\n    >\n      <template>\n        <div>ISO: {{iso}}; locale: {{localeString}}</div>\n      </template>\n    </bento-date-display>\n  </body>\n</html>\n```\n\n### Interactivity and API usage\n\nThe Bento Date Display component does not have an imperative API. However, the Bento Date Display Web Component will render a mustache-template, provided by the consumer in a `<template>` tag with `type=\"amp-mustache\"`. This template may interpolate date-related parameters. See the [Returned Time Parameters section](#returned-time-parameters) for a full list of all the available parameters.\n\n### Layout and style\n\nEach Bento component has a small CSS library you must include to guarantee proper loading without [content shifts](https://web.dev/cls/). Because of order-based specificity, you must manually ensure that stylesheets are included before any custom styles.\n\n```html\n<link rel=\"stylesheet\" type=\"text/css\" href=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.css\">\n```\n\nAlternatively, you may also make the light-weight pre-upgrade styles available inline:\n\n```html\n<style data-bento-boilerplate>\n  bento-date-display {\n    display: block;\n    overflow: hidden;\n    position: relative;\n  }\n</style>\n```\n\n### Attributes\n\n#### `datetime`\n\nThe `datetime` attribute specifies the date and time in a standard ISO 8601 date\nstring (e.g. 2017-08-02T15:05:05.000Z) or the string `now`. If set to `now`,\n`bento-date-display` will use the time the page loaded to render its template.\n\n#### `timestamp-ms`\n\nThe `timestamp-ms` attribute specifies the date and time using the number of\nmilliseconds since 1970-01-01T0:00:00.000Z\n\n#### `timestamp-seconds`\n\nThe `timestamp-seconds` attribute specifies the date and time using the number\nof seconds since 1970-01-01T0:00:00.000Z\n\n#### `locale` (optional)\n\nAn internationalization language string for each timer unit. The default value\nis `en` (for English). This attribute supports all values that are supported by\nthe user's browser.\n\n#### `display-in` (optional)\n\nIf set to the value `utc`, the `display-in` attribute will convert the given\ndate to UTC.\n\n#### `offset-seconds` (optional)\n\nThe `offset-seconds` attribute specifies an integer number of seconds to shift\nthe given date.\n\n#### `data-options-\\*` (optional)\n\nThe `data-options-*` supports all the options under [Intl.DateTimeFormat.options](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/DateTimeFormat#parameters)\nparameter that specifies the formatting style to use for `localeString` format.\nValid attributes include: `data-options-date-style`, `data-options-time-style`, etc.\n\nNote that if `display-in` attrubute is set to `utc`, the value of\n`data-options-time-zone` will automatically be converted to `UTC`.\n\n### Styling\n\nYou may use the `bento-date-display` element selector to style the Bento Date Display component freely.\n\n---\n\n## Preact/React Component\n\n### Import via npm\n\n```sh\nnpm install @bentoproject/date-display\n```\n\n```javascript\nimport React from 'react';\nimport {BentoDateDisplay} from '@bentoproject/date-display/react';\nimport '@bentoproject/date-display/styles.css';\n\nfunction App() {\n  return (\n    <BentoDateDisplay\n      datetime={dateTime}\n      displayIn={displayIn}\n      locale={locale}\n      render={(date) => (\n        <div>{`ISO: ${date.iso}; locale: ${date.localeString}`}</div>\n      )}\n    />\n  );\n}\n```\n\n### Interactivity and API usage\n\nThe Bento Date Display component does not have an imperative API. However, the Bento Date Display Preact/React component does accept a `render` prop that renders the consumer's template. This `render` prop should be a function which the Bento Date Display Preact/React component can use to render its template. The `render` callback will be provided a variety of date-related parameters for consumers to interpolate in the rendered template. See the [`render` prop section](#render) for more information.\n\n### Layout and style\n\nThe Bento Date Display Preact/React component allows consumers to render their own templates. These templates may use inline styles, `<style>` tags, Preact/React components that import their own stylesheets.\n\n### Props\n\n#### `datetime`\n\nRequired prop. Denotes the date and time as a Date, String, or Number. If String, must be a standard ISO 8601 date string (e.g. 2017-08-02T15:05:05.000Z) or the string `now`. If set to `now`, it will use the time the page loaded to render its template. If Number, must be a POSIX epoch value in milliseconds.\n\n#### `displayIn`\n\nOptional prop that can be either `\"utc\"` or `\"local\"` and defaults to `\"local\"`. This prop indicates what timezone to display the date in. If set to the value `\"utc\"`, the component will convert the given date to UTC.\n\n#### `locale`\n\nAn internationalization language string for each timer unit. The default value is `en` (for English). This prop supports all values that are supported by the user's browser.\n\n#### `localeOptions`\n\nThe `localeOptions` object supports all the options under [Intl.DateTimeFormat.options](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/DateTimeFormat#parameters) parameter that specifies the formatting style to use for `localeString` format.\n\nNote that if the `displayIn` prop is set to `utc`, the value of `localeOptions.timeZone` will automatically be converted to `UTC`.\n\n#### `render`\n\nOptional callback that should render a template. The callback will be provided an object with properties/values related to the date expressed in `datetime`.\n\nBy default, the Bento Date Display component will display the [`localeString` form of the Date](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/toLocaleString) for the given locale and localeOption. See the [Returned Time Parameters section](#returned-time-parameters) for more details on how each property will be displayed.\n\n```typescript\n(dateParams: DateParams) => JSXInternal.Element\ninterface DateParams {\n  day: number;\n  dayName: string;\n  dayNameShort: string;\n  dayPeriod: string;\n  dayTwoDigit: string;\n  hour: number;\n  hour12: number;\n  hour12TwoDigit: string;\n  hourTwoDigit: string;\n  iso: string;\n  localeString: string;\n  minute: number;\n  minuteTwoDigit: string;\n  month: number;\n  monthName: string;\n  monthNameShort: string;\n  monthTwoDigit: string;\n  second: number;\n  secondTwoDigit: string;\n  timeZoneName: string;\n  timeZoneNameShort: string;\n  year: number;\n  yearTwoDi: string;\n}\n```\n\n### Returned Time Parameters\n\nThis table lists the format you can specify in your Mustache template:\n\n| Format            | Meaning                                                       |\n| ----------------- | ------------------------------------------------------------- |\n| day               | 1, 2, ...12, 13, etc.                                         |\n| dayName           | string,                                                       |\n| dayNameShort      | string,                                                       |\n| dayPeriod         | string,                                                       |\n| dayTwoDigit       | 01, 02, 03, ..., 12, 13, etc.                                 |\n| hour              | 0, 1, 2, 3, ..., 12, 13, ..., 22, 23                          |\n| hour12            | 1, 2, 3, ..., 12, 1, 2, ..., 11, 12                           |\n| hour12TwoDigit    | 01, 02, ..., 12, 01, 02, ..., 11, 12                          |\n| hourTwoDigit      | 00, 01, 02, ..., 12, 13, ..., 22, 23                          |\n| iso               | A standard ISO8601 date string e.g. 2019-01-23T15:31:21.213Z, |\n| localeString      | A string with a language sensitive representation.            |\n| minute            | 0, 1, 2, ..., 58, 59                                          |\n| minuteTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| month             | 1, 2, 3, ..., 12                                              |\n| monthName         | Internationalized month name string.                          |\n| monthNameShort    | Internationalized abbreviated month name string.,             |\n| monthTwoDigit     | 01, 02, ..., 11, 12                                           |\n| second            | 0, 1, 2, ..., 58, 59                                          |\n| secondTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| timeZoneName      | Internationalized timezone, like `Pacific Daylight Time`      |\n| timeZoneNameShort | Internationalized timezone, abbreviated, like `PST`           |\n| year              | 0, 1, 2, ..., 1999, 2000, 2001, etc.                          |\n| yearTwoDigit      | 00, 01, 02, ..., 17, 18, 19, ..., 98, 99                      |\n","readmeFilename":"README.md","gitHead":"8a0a0067f57f89d0566ee1db3d4bfeea072d3c56","bugs":{"url":"https://github.com/ampproject/amphtml/issues"},"_id":"@bentoproject/date-display@1.2210052034.0","_nodeVersion":"16.17.1","_npmVersion":"8.15.0","dist":{"integrity":"sha512-Ez2wv3PDuULVIZyZQj8W0zYlnFfrxNWx68weydUaAvo5CrCRivJX6L3+8ltiSASAJ9SymPC5LTq63ZgpymkPFA==","shasum":"78edea10f58f51b43e28aa9ffeb76ebfa8bd139b","tarball":"https://registry.npmjs.org/@bentoproject/date-display/-/date-display-1.2210052034.0.tgz","fileCount":29,"unpackedSize":677013,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQC9NrdB6omfu9h/vCtr+GoTLjuq8HWVoMeV3Jno28ycgAIgRZWCM/kOyGt1FUlJAJfzT4wUabwt3TJ+HDa8cjO7GYI="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjPpDFACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrWoQ//b44gZq29DZhqLTjlvg8325F1QP/Ow0q9WkUjnUwbcMZgS1ec\r\nf8X3+wx0C8VeaFna2oTWbzZAPxRIaD1xV3JUiuumnOrfdxvbFj3dNph2fBxq\r\nqc/G5SOX7nuNRMqcvh+b3wQyJeQPHRJdAUTa1EFZaRS92fMPvl/1punaw8Q8\r\nEZEQYFaZ4gBEnliTgKXdDneScv6nk37AWXzETfT6ArRBnrKihVrwe0f/vlSb\r\nqSIr3Y3z/o8iaswn2vu1leoiDwjh12/EhW/T2knULfConDMHHkRWJJRioV8T\r\npHV0VHyYGVD1Mv4Gln/qMbFofo+WDDm6DPZzmn1sQczr9VIItRu7me4G3jkd\r\noJqQunV0hq8OAtc3AmQm0Co9/mCGv6es9I+SB7ayvcwSU1cQ+4Ar/eCMv5sp\r\nQwUovPrVDqhP9agNcBip/2PlISghD3QwdCrWdH/cImFvDf2O56Yvwa22y40z\r\nL7tveP2eFu7cX4Ul5xLRRK8hYVsoAj6yaqyfL02JOV8B6s/bSAGopECw/eTC\r\nhaUqh/tjiVRHGRvOeE5SKN5bXY2AzECKbPNUfnk6GycufthNGUTPSbUt63GZ\r\n7EC1HeyJSpi1wx4H5/5kfA853H59n/zHz078jHu7as2leoOqrdhURDw2o1Sf\r\nAvDe9cTNIocT3tRtpj7NPKy9GodJX8iC9QE=\r\n=yuQ1\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"bentoprojectbot","email":"bentobot@amp.dev"},"directories":{},"maintainers":[{"name":"bentoprojectbot","email":"bentobot@amp.dev"},{"name":"kristoferbaxter","email":"kbax@me.com"},{"name":"esth","email":"esther@amp.dev"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/date-display_1.2210052034.0_1665044677180_0.5630941909317575"},"_hasShrinkwrap":false},"1.2210071758.0":{"name":"@bentoproject/date-display","version":"1.2210071758.0","description":"Displays time data that you can render in your page.","author":{"name":"Bento Authors"},"license":"Apache-2.0","main":"./dist/web-component.js","module":"./dist/web-component.module.js","exports":{".":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./web-component":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./preact":{"import":"./dist/component-preact.module.js","require":"./dist/component-preact.js"},"./react":{"import":"./dist/component-react.module.js","require":"./dist/component-react.js"},"./web-component.css":"./dist/web-component.css"},"repository":{"type":"git","url":"git+https://github.com/ampproject/amphtml.git","directory":"extensions/amp-date-display/1.0"},"homepage":"https://github.com/ampproject/amphtml/tree/main/extensions/amp-date-display/1.0","peerDependencies":{"preact":"^10.2.1","react":"^17.0.0"},"dependencies":{"@bentoproject/core":"0.2210071758.0"},"readme":"# Bento Date Display\n\nDisplays time data that you can render in your page. By providing specific [attributes](#attributes) in the Bento Date Display tag, the Bento Date Display extension returns a list of time parameters, which you can pass to [an amp-mustache template](../../amp-mustache/amp-mustache.md) for rendering. Refer to the [list below for each returned time parameter](#returned-time-parameters).\n\n## Web Component\n\nYou must include each Bento component's required CSS library to guarantee proper loading and before adding custom styles. Or use the light-weight pre-upgrade styles available inline. See [Layout and style](#layout-and-style).\n\n### Example: Import via npm\n\nInstall via npm:\n\n```sh\nnpm install @bentoproject/bento-date-display\n```\n\n```javascript\nimport {defineElement as defineBentoDateDisplay} from '@bentoproject/bento-date-display';\ndefineBentoDateDisplay();\n```\n\n### Include via `<script>`\n\n```html\n<script type=\"module\" src=\"https://cdn.ampproject.org/bento.mjs\" crossorigin=\"anonymous\"></script>\n<script nomodule src=\"https://cdn.ampproject.org/bento.js\" crossorigin=\"anonymous\"></script>\n<!-- Include bento-mustache.js to use mustache templates with this component -->\n<script async src=\"https://cdn.ampproject.org/v0/bento-mustache.js\"></script>\n<script type=\"module\" src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.mjs\" crossorigin=\"anonymous\"></script>\n<script nomodule src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.js\" crossorigin=\"anonymous\"></script>\n<link rel=\"stylesheet\" href=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.css\" crossorigin=\"anonymous\">\n```\n\n### Example\n\n```html\n<!DOCTYPE html>\n<html>\n  <head>\n    <script\n      type=\"module\"\n      async\n      src=\"https://cdn.ampproject.org/bento.mjs\"\n    ></script>\n    <script nomodule src=\"https://cdn.ampproject.org/bento.js\"></script>\n    <script async src=\"https://cdn.ampproject.org/v0/bento-mustache.js\"></script>\n    <script\n      type=\"module\"\n      async\n      src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.mjs\"\n    ></script>\n    <script\n      nomodule\n      async\n      src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.js\"\n    ></script>\n    <link\n      rel=\"stylesheet\"\n      type=\"text/css\"\n      href=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.css\"\n    />\n  </head>\n  <body>\n    <bento-date-display\n      datetime=\"2021-09-09T16:02:08.494Z\"\n      displayIn=\"utc\"\n      locale=\"en-GB\"\n    >\n      <template>\n        <div>ISO: {{iso}}; locale: {{localeString}}</div>\n      </template>\n    </bento-date-display>\n  </body>\n</html>\n```\n\n### Interactivity and API usage\n\nThe Bento Date Display component does not have an imperative API. However, the Bento Date Display Web Component will render a mustache-template, provided by the consumer in a `<template>` tag with `type=\"amp-mustache\"`. This template may interpolate date-related parameters. See the [Returned Time Parameters section](#returned-time-parameters) for a full list of all the available parameters.\n\n### Layout and style\n\nEach Bento component has a small CSS library you must include to guarantee proper loading without [content shifts](https://web.dev/cls/). Because of order-based specificity, you must manually ensure that stylesheets are included before any custom styles.\n\n```html\n<link rel=\"stylesheet\" type=\"text/css\" href=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.css\">\n```\n\nAlternatively, you may also make the light-weight pre-upgrade styles available inline:\n\n```html\n<style data-bento-boilerplate>\n  bento-date-display {\n    display: block;\n    overflow: hidden;\n    position: relative;\n  }\n</style>\n```\n\n### Attributes\n\n#### `datetime`\n\nThe `datetime` attribute specifies the date and time in a standard ISO 8601 date\nstring (e.g. 2017-08-02T15:05:05.000Z) or the string `now`. If set to `now`,\n`bento-date-display` will use the time the page loaded to render its template.\n\n#### `timestamp-ms`\n\nThe `timestamp-ms` attribute specifies the date and time using the number of\nmilliseconds since 1970-01-01T0:00:00.000Z\n\n#### `timestamp-seconds`\n\nThe `timestamp-seconds` attribute specifies the date and time using the number\nof seconds since 1970-01-01T0:00:00.000Z\n\n#### `locale` (optional)\n\nAn internationalization language string for each timer unit. The default value\nis `en` (for English). This attribute supports all values that are supported by\nthe user's browser.\n\n#### `display-in` (optional)\n\nIf set to the value `utc`, the `display-in` attribute will convert the given\ndate to UTC.\n\n#### `offset-seconds` (optional)\n\nThe `offset-seconds` attribute specifies an integer number of seconds to shift\nthe given date.\n\n#### `data-options-\\*` (optional)\n\nThe `data-options-*` supports all the options under [Intl.DateTimeFormat.options](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/DateTimeFormat#parameters)\nparameter that specifies the formatting style to use for `localeString` format.\nValid attributes include: `data-options-date-style`, `data-options-time-style`, etc.\n\nNote that if `display-in` attrubute is set to `utc`, the value of\n`data-options-time-zone` will automatically be converted to `UTC`.\n\n### Styling\n\nYou may use the `bento-date-display` element selector to style the Bento Date Display component freely.\n\n---\n\n## Preact/React Component\n\n### Import via npm\n\n```sh\nnpm install @bentoproject/date-display\n```\n\n```javascript\nimport React from 'react';\nimport {BentoDateDisplay} from '@bentoproject/date-display/react';\nimport '@bentoproject/date-display/styles.css';\n\nfunction App() {\n  return (\n    <BentoDateDisplay\n      datetime={dateTime}\n      displayIn={displayIn}\n      locale={locale}\n      render={(date) => (\n        <div>{`ISO: ${date.iso}; locale: ${date.localeString}`}</div>\n      )}\n    />\n  );\n}\n```\n\n### Interactivity and API usage\n\nThe Bento Date Display component does not have an imperative API. However, the Bento Date Display Preact/React component does accept a `render` prop that renders the consumer's template. This `render` prop should be a function which the Bento Date Display Preact/React component can use to render its template. The `render` callback will be provided a variety of date-related parameters for consumers to interpolate in the rendered template. See the [`render` prop section](#render) for more information.\n\n### Layout and style\n\nThe Bento Date Display Preact/React component allows consumers to render their own templates. These templates may use inline styles, `<style>` tags, Preact/React components that import their own stylesheets.\n\n### Props\n\n#### `datetime`\n\nRequired prop. Denotes the date and time as a Date, String, or Number. If String, must be a standard ISO 8601 date string (e.g. 2017-08-02T15:05:05.000Z) or the string `now`. If set to `now`, it will use the time the page loaded to render its template. If Number, must be a POSIX epoch value in milliseconds.\n\n#### `displayIn`\n\nOptional prop that can be either `\"utc\"` or `\"local\"` and defaults to `\"local\"`. This prop indicates what timezone to display the date in. If set to the value `\"utc\"`, the component will convert the given date to UTC.\n\n#### `locale`\n\nAn internationalization language string for each timer unit. The default value is `en` (for English). This prop supports all values that are supported by the user's browser.\n\n#### `localeOptions`\n\nThe `localeOptions` object supports all the options under [Intl.DateTimeFormat.options](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/DateTimeFormat#parameters) parameter that specifies the formatting style to use for `localeString` format.\n\nNote that if the `displayIn` prop is set to `utc`, the value of `localeOptions.timeZone` will automatically be converted to `UTC`.\n\n#### `render`\n\nOptional callback that should render a template. The callback will be provided an object with properties/values related to the date expressed in `datetime`.\n\nBy default, the Bento Date Display component will display the [`localeString` form of the Date](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/toLocaleString) for the given locale and localeOption. See the [Returned Time Parameters section](#returned-time-parameters) for more details on how each property will be displayed.\n\n```typescript\n(dateParams: DateParams) => JSXInternal.Element\ninterface DateParams {\n  day: number;\n  dayName: string;\n  dayNameShort: string;\n  dayPeriod: string;\n  dayTwoDigit: string;\n  hour: number;\n  hour12: number;\n  hour12TwoDigit: string;\n  hourTwoDigit: string;\n  iso: string;\n  localeString: string;\n  minute: number;\n  minuteTwoDigit: string;\n  month: number;\n  monthName: string;\n  monthNameShort: string;\n  monthTwoDigit: string;\n  second: number;\n  secondTwoDigit: string;\n  timeZoneName: string;\n  timeZoneNameShort: string;\n  year: number;\n  yearTwoDi: string;\n}\n```\n\n### Returned Time Parameters\n\nThis table lists the format you can specify in your Mustache template:\n\n| Format            | Meaning                                                       |\n| ----------------- | ------------------------------------------------------------- |\n| day               | 1, 2, ...12, 13, etc.                                         |\n| dayName           | string,                                                       |\n| dayNameShort      | string,                                                       |\n| dayPeriod         | string,                                                       |\n| dayTwoDigit       | 01, 02, 03, ..., 12, 13, etc.                                 |\n| hour              | 0, 1, 2, 3, ..., 12, 13, ..., 22, 23                          |\n| hour12            | 1, 2, 3, ..., 12, 1, 2, ..., 11, 12                           |\n| hour12TwoDigit    | 01, 02, ..., 12, 01, 02, ..., 11, 12                          |\n| hourTwoDigit      | 00, 01, 02, ..., 12, 13, ..., 22, 23                          |\n| iso               | A standard ISO8601 date string e.g. 2019-01-23T15:31:21.213Z, |\n| localeString      | A string with a language sensitive representation.            |\n| minute            | 0, 1, 2, ..., 58, 59                                          |\n| minuteTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| month             | 1, 2, 3, ..., 12                                              |\n| monthName         | Internationalized month name string.                          |\n| monthNameShort    | Internationalized abbreviated month name string.,             |\n| monthTwoDigit     | 01, 02, ..., 11, 12                                           |\n| second            | 0, 1, 2, ..., 58, 59                                          |\n| secondTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| timeZoneName      | Internationalized timezone, like `Pacific Daylight Time`      |\n| timeZoneNameShort | Internationalized timezone, abbreviated, like `PST`           |\n| year              | 0, 1, 2, ..., 1999, 2000, 2001, etc.                          |\n| yearTwoDigit      | 00, 01, 02, ..., 17, 18, 19, ..., 98, 99                      |\n","readmeFilename":"README.md","gitHead":"7c969ff5fd5406304f6a9867fa0db59b74e94524","bugs":{"url":"https://github.com/ampproject/amphtml/issues"},"_id":"@bentoproject/date-display@1.2210071758.0","_nodeVersion":"16.17.1","_npmVersion":"8.15.0","dist":{"integrity":"sha512-GApFMTUL8dzfv6sxc4O546fCf0sXjwfXUH9tpv4T7sHwaYifF6IiBozAPjlrfXL8VVFk828ivOzpCKM/s4c/tg==","shasum":"17257eb03bfe12a097effc963c4aea017032792a","tarball":"https://registry.npmjs.org/@bentoproject/date-display/-/date-display-1.2210071758.0.tgz","fileCount":29,"unpackedSize":677013,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCdA8SmWn+FnX56d+o/1V3Dcm1/n/3YMpJS7F8Vc1Qp5QIhAMwSOKt6oRCPXYGRfcerI8AIukhFpnYeJ8sCHojwQYjj"}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjQTP7ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmop2RAAg/QDpw7abixoLkcm3ZhfAuy6nQQiTIikb1uwVvKKqfCVrXa2\r\n+N3snPKrbdaQrekvpCQubrryiBYc5Z/o2HDvFYumv5kvj+ILNEOIzzbt2tOJ\r\nNxJVrVfuKXari3h0RYn7riPz2NebL5rSD433q62x8ZvrEW4vC18yccRt5Fb4\r\nJQCN8K6gO/nh/E/eOLBkkMCZoXSbceYrntbUeh2JNk3WHc2DYrvTQsotA9NP\r\nX3uEdQdlK6HObRHKiBh9FW5aOFZAOEicAVsfPH9jZcyP/Lgj0EZaJAvFmW9F\r\n5YaPqhtVq35zGuLJRek5klz+t2ot/4IF0rqCE9GTNX+XTaaGTVgxta/Yudaz\r\nMpkMTgk0GZlVuUqTeBhwCIFXhitgtWQYkkHCoFpbziRCE+LyR5o4la5Uzode\r\ngECXiTt9xjbIJTmhREgKME4SPIWyEdG5ug+eHPIoAiWIEteHCmpewizpliau\r\nPbolMZjL8O/vN5/H8m0CHpqOEEIjR3RgK+NZEpq4hVFvctVweCqpB1pCtD02\r\nZB+KQAmZ2mUhCVaxYwxjnQNynSXtAuMumbSFd1y5IlkqM1InMbq0gQsgPolE\r\nZbtd4e+t8DegvyAF4PFzepSTEyA3mXL7CbNUMobUgaDTvRQWjdurPj+hGOHS\r\nO6Bt5TJSNG4QTOrqnsE9QXpUkAI+jDeEGb0=\r\n=uFaT\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"bentoprojectbot","email":"bentobot@amp.dev"},"directories":{},"maintainers":[{"name":"bentoprojectbot","email":"bentobot@amp.dev"},{"name":"kristoferbaxter","email":"kbax@me.com"},{"name":"esth","email":"esther@amp.dev"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/date-display_1.2210071758.0_1665217530925_0.8736618960788332"},"_hasShrinkwrap":false},"1.2210112333.0":{"name":"@bentoproject/date-display","version":"1.2210112333.0","description":"Displays time data that you can render in your page.","author":{"name":"Bento Authors"},"license":"Apache-2.0","main":"./dist/web-component.js","module":"./dist/web-component.module.js","exports":{".":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./web-component":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./preact":{"import":"./dist/component-preact.module.js","require":"./dist/component-preact.js"},"./react":{"import":"./dist/component-react.module.js","require":"./dist/component-react.js"},"./web-component.css":"./dist/web-component.css"},"repository":{"type":"git","url":"git+https://github.com/ampproject/amphtml.git","directory":"extensions/amp-date-display/1.0"},"homepage":"https://github.com/ampproject/amphtml/tree/main/extensions/amp-date-display/1.0","peerDependencies":{"preact":"^10.2.1","react":"^17.0.0"},"dependencies":{"@bentoproject/core":"0.2210112333.0"},"readme":"# Bento Date Display\n\nDisplays time data that you can render in your page. By providing specific [attributes](#attributes) in the Bento Date Display tag, the Bento Date Display extension returns a list of time parameters, which you can pass to [an amp-mustache template](../../amp-mustache/amp-mustache.md) for rendering. Refer to the [list below for each returned time parameter](#returned-time-parameters).\n\n## Web Component\n\nYou must include each Bento component's required CSS library to guarantee proper loading and before adding custom styles. Or use the light-weight pre-upgrade styles available inline. See [Layout and style](#layout-and-style).\n\n### Example: Import via npm\n\nInstall via npm:\n\n```sh\nnpm install @bentoproject/bento-date-display\n```\n\n```javascript\nimport {defineElement as defineBentoDateDisplay} from '@bentoproject/bento-date-display';\ndefineBentoDateDisplay();\n```\n\n### Include via `<script>`\n\n```html\n<script type=\"module\" src=\"https://cdn.ampproject.org/bento.mjs\" crossorigin=\"anonymous\"></script>\n<script nomodule src=\"https://cdn.ampproject.org/bento.js\" crossorigin=\"anonymous\"></script>\n<!-- Include bento-mustache.js to use mustache templates with this component -->\n<script async src=\"https://cdn.ampproject.org/v0/bento-mustache.js\"></script>\n<script type=\"module\" src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.mjs\" crossorigin=\"anonymous\"></script>\n<script nomodule src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.js\" crossorigin=\"anonymous\"></script>\n<link rel=\"stylesheet\" href=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.css\" crossorigin=\"anonymous\">\n```\n\n### Example\n\n```html\n<!DOCTYPE html>\n<html>\n  <head>\n    <script\n      type=\"module\"\n      async\n      src=\"https://cdn.ampproject.org/bento.mjs\"\n    ></script>\n    <script nomodule src=\"https://cdn.ampproject.org/bento.js\"></script>\n    <script async src=\"https://cdn.ampproject.org/v0/bento-mustache.js\"></script>\n    <script\n      type=\"module\"\n      async\n      src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.mjs\"\n    ></script>\n    <script\n      nomodule\n      async\n      src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.js\"\n    ></script>\n    <link\n      rel=\"stylesheet\"\n      type=\"text/css\"\n      href=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.css\"\n    />\n  </head>\n  <body>\n    <bento-date-display\n      datetime=\"2021-09-09T16:02:08.494Z\"\n      displayIn=\"utc\"\n      locale=\"en-GB\"\n    >\n      <template>\n        <div>ISO: {{iso}}; locale: {{localeString}}</div>\n      </template>\n    </bento-date-display>\n  </body>\n</html>\n```\n\n### Interactivity and API usage\n\nThe Bento Date Display component does not have an imperative API. However, the Bento Date Display Web Component will render a mustache-template, provided by the consumer in a `<template>` tag with `type=\"amp-mustache\"`. This template may interpolate date-related parameters. See the [Returned Time Parameters section](#returned-time-parameters) for a full list of all the available parameters.\n\n### Layout and style\n\nEach Bento component has a small CSS library you must include to guarantee proper loading without [content shifts](https://web.dev/cls/). Because of order-based specificity, you must manually ensure that stylesheets are included before any custom styles.\n\n```html\n<link rel=\"stylesheet\" type=\"text/css\" href=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.css\">\n```\n\nAlternatively, you may also make the light-weight pre-upgrade styles available inline:\n\n```html\n<style data-bento-boilerplate>\n  bento-date-display {\n    display: block;\n    overflow: hidden;\n    position: relative;\n  }\n</style>\n```\n\n### Attributes\n\n#### `datetime`\n\nThe `datetime` attribute specifies the date and time in a standard ISO 8601 date\nstring (e.g. 2017-08-02T15:05:05.000Z) or the string `now`. If set to `now`,\n`bento-date-display` will use the time the page loaded to render its template.\n\n#### `timestamp-ms`\n\nThe `timestamp-ms` attribute specifies the date and time using the number of\nmilliseconds since 1970-01-01T0:00:00.000Z\n\n#### `timestamp-seconds`\n\nThe `timestamp-seconds` attribute specifies the date and time using the number\nof seconds since 1970-01-01T0:00:00.000Z\n\n#### `locale` (optional)\n\nAn internationalization language string for each timer unit. The default value\nis `en` (for English). This attribute supports all values that are supported by\nthe user's browser.\n\n#### `display-in` (optional)\n\nIf set to the value `utc`, the `display-in` attribute will convert the given\ndate to UTC.\n\n#### `offset-seconds` (optional)\n\nThe `offset-seconds` attribute specifies an integer number of seconds to shift\nthe given date.\n\n#### `data-options-\\*` (optional)\n\nThe `data-options-*` supports all the options under [Intl.DateTimeFormat.options](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/DateTimeFormat#parameters)\nparameter that specifies the formatting style to use for `localeString` format.\nValid attributes include: `data-options-date-style`, `data-options-time-style`, etc.\n\nNote that if `display-in` attrubute is set to `utc`, the value of\n`data-options-time-zone` will automatically be converted to `UTC`.\n\n### Styling\n\nYou may use the `bento-date-display` element selector to style the Bento Date Display component freely.\n\n---\n\n## Preact/React Component\n\n### Import via npm\n\n```sh\nnpm install @bentoproject/date-display\n```\n\n```javascript\nimport React from 'react';\nimport {BentoDateDisplay} from '@bentoproject/date-display/react';\nimport '@bentoproject/date-display/styles.css';\n\nfunction App() {\n  return (\n    <BentoDateDisplay\n      datetime={dateTime}\n      displayIn={displayIn}\n      locale={locale}\n      render={(date) => (\n        <div>{`ISO: ${date.iso}; locale: ${date.localeString}`}</div>\n      )}\n    />\n  );\n}\n```\n\n### Interactivity and API usage\n\nThe Bento Date Display component does not have an imperative API. However, the Bento Date Display Preact/React component does accept a `render` prop that renders the consumer's template. This `render` prop should be a function which the Bento Date Display Preact/React component can use to render its template. The `render` callback will be provided a variety of date-related parameters for consumers to interpolate in the rendered template. See the [`render` prop section](#render) for more information.\n\n### Layout and style\n\nThe Bento Date Display Preact/React component allows consumers to render their own templates. These templates may use inline styles, `<style>` tags, Preact/React components that import their own stylesheets.\n\n### Props\n\n#### `datetime`\n\nRequired prop. Denotes the date and time as a Date, String, or Number. If String, must be a standard ISO 8601 date string (e.g. 2017-08-02T15:05:05.000Z) or the string `now`. If set to `now`, it will use the time the page loaded to render its template. If Number, must be a POSIX epoch value in milliseconds.\n\n#### `displayIn`\n\nOptional prop that can be either `\"utc\"` or `\"local\"` and defaults to `\"local\"`. This prop indicates what timezone to display the date in. If set to the value `\"utc\"`, the component will convert the given date to UTC.\n\n#### `locale`\n\nAn internationalization language string for each timer unit. The default value is `en` (for English). This prop supports all values that are supported by the user's browser.\n\n#### `localeOptions`\n\nThe `localeOptions` object supports all the options under [Intl.DateTimeFormat.options](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/DateTimeFormat#parameters) parameter that specifies the formatting style to use for `localeString` format.\n\nNote that if the `displayIn` prop is set to `utc`, the value of `localeOptions.timeZone` will automatically be converted to `UTC`.\n\n#### `render`\n\nOptional callback that should render a template. The callback will be provided an object with properties/values related to the date expressed in `datetime`.\n\nBy default, the Bento Date Display component will display the [`localeString` form of the Date](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/toLocaleString) for the given locale and localeOption. See the [Returned Time Parameters section](#returned-time-parameters) for more details on how each property will be displayed.\n\n```typescript\n(dateParams: DateParams) => JSXInternal.Element\ninterface DateParams {\n  day: number;\n  dayName: string;\n  dayNameShort: string;\n  dayPeriod: string;\n  dayTwoDigit: string;\n  hour: number;\n  hour12: number;\n  hour12TwoDigit: string;\n  hourTwoDigit: string;\n  iso: string;\n  localeString: string;\n  minute: number;\n  minuteTwoDigit: string;\n  month: number;\n  monthName: string;\n  monthNameShort: string;\n  monthTwoDigit: string;\n  second: number;\n  secondTwoDigit: string;\n  timeZoneName: string;\n  timeZoneNameShort: string;\n  year: number;\n  yearTwoDi: string;\n}\n```\n\n### Returned Time Parameters\n\nThis table lists the format you can specify in your Mustache template:\n\n| Format            | Meaning                                                       |\n| ----------------- | ------------------------------------------------------------- |\n| day               | 1, 2, ...12, 13, etc.                                         |\n| dayName           | string,                                                       |\n| dayNameShort      | string,                                                       |\n| dayPeriod         | string,                                                       |\n| dayTwoDigit       | 01, 02, 03, ..., 12, 13, etc.                                 |\n| hour              | 0, 1, 2, 3, ..., 12, 13, ..., 22, 23                          |\n| hour12            | 1, 2, 3, ..., 12, 1, 2, ..., 11, 12                           |\n| hour12TwoDigit    | 01, 02, ..., 12, 01, 02, ..., 11, 12                          |\n| hourTwoDigit      | 00, 01, 02, ..., 12, 13, ..., 22, 23                          |\n| iso               | A standard ISO8601 date string e.g. 2019-01-23T15:31:21.213Z, |\n| localeString      | A string with a language sensitive representation.            |\n| minute            | 0, 1, 2, ..., 58, 59                                          |\n| minuteTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| month             | 1, 2, 3, ..., 12                                              |\n| monthName         | Internationalized month name string.                          |\n| monthNameShort    | Internationalized abbreviated month name string.,             |\n| monthTwoDigit     | 01, 02, ..., 11, 12                                           |\n| second            | 0, 1, 2, ..., 58, 59                                          |\n| secondTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| timeZoneName      | Internationalized timezone, like `Pacific Daylight Time`      |\n| timeZoneNameShort | Internationalized timezone, abbreviated, like `PST`           |\n| year              | 0, 1, 2, ..., 1999, 2000, 2001, etc.                          |\n| yearTwoDigit      | 00, 01, 02, ..., 17, 18, 19, ..., 98, 99                      |\n","readmeFilename":"README.md","gitHead":"1d82bae06844d5413aeb632cfb2f3ef443548ad0","bugs":{"url":"https://github.com/ampproject/amphtml/issues"},"_id":"@bentoproject/date-display@1.2210112333.0","_nodeVersion":"16.17.1","_npmVersion":"8.15.0","dist":{"integrity":"sha512-Ey30jzm0TaIGZTCW2RG7zut73iJ9ACXYGbugLIzdnW5OtG3wWOQvAgPxOW5kXfzmPerFjoEOnyr9DonikA2BTA==","shasum":"ab2ad5c80b2fadde52c0d4a615fae3121bd5be4b","tarball":"https://registry.npmjs.org/@bentoproject/date-display/-/date-display-1.2210112333.0.tgz","fileCount":29,"unpackedSize":677013,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDvWQL6JA/ieIwyLxtnNsk5vW0tuK6SJ8tTNQXgsUfpIwIhALRuaw/c2tHI5AVnGHZtYnqCo1/KFQWGAkF0HONZOug1"}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjRnnKACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpIVxAAnqHYmc550v5jJ7QtMyd9fn4INkyJOf2KkH7N8Y8Zt/5vSVIW\r\n8rPTzpU2VWXGT0qThtFfZRXYcsY4b0L6HG4cWGzoAyiZA6A/8mo6+L83XjJ0\r\nFVaZ9HOUMt/M6nyhtggYtJYKeqEWf20OGGBKMgfbKymd62YkgmdSTy0gXdtZ\r\nC2FwtUb7bPPRvOtnd+CcMbu54ItAOfPFcq/8m6LJxwf9c2/1zt8f5A2KjfuD\r\nBEWBhdR2zAKcZamvMaIuMNXgMDqN9ecAxT0fFCNfseSPInp2vms/hkxjFif5\r\ndHCQQ4UU2jJpHqOb1F0D6utIffNo9PfTCMh6aqN3pmXIXKQh0Kx1sYiezHRb\r\nGniiPAwCfTaN8lGOjsOKIgDJzLv73bXFlbzRrXofu3Opc7CEETPjhBSe8I5b\r\nboxNCELXh/SE5GvGVNJb88KTIHUGs9q8ZcYjW+IjWwzh7OXeR/EU4CXXkRkk\r\nlWf5A8Cn2smK3PJoTrUCDLfLbLm/soE2cgYHoswhZJu/GwYu/O8YQLtRIuat\r\nCDLb1WFU9L1+ANRRXo0IBkmSf7gNdz68otX31/XsXVxJN9JKiePDMSL6aHXa\r\nzTzJJNQwKBWsxhXfXJXiuiPN5n/iXixf54eWIlAcbx0Xl7Gsy2jGni6rRmm9\r\nO9ZMHyD6lNF4n3N8yjrnHxoctoNqVQx6ghw=\r\n=dlno\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"bentoprojectbot","email":"bentobot@amp.dev"},"directories":{},"maintainers":[{"name":"bentoprojectbot","email":"bentobot@amp.dev"},{"name":"kristoferbaxter","email":"kbax@me.com"},{"name":"esth","email":"esther@amp.dev"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/date-display_1.2210112333.0_1665563081817_0.10968548174988246"},"_hasShrinkwrap":false},"1.2210142102.0":{"name":"@bentoproject/date-display","version":"1.2210142102.0","description":"Displays time data that you can render in your page.","author":{"name":"Bento Authors"},"license":"Apache-2.0","main":"./dist/web-component.js","module":"./dist/web-component.module.js","exports":{".":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./web-component":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./preact":{"import":"./dist/component-preact.module.js","require":"./dist/component-preact.js"},"./react":{"import":"./dist/component-react.module.js","require":"./dist/component-react.js"},"./web-component.css":"./dist/web-component.css"},"repository":{"type":"git","url":"git+https://github.com/ampproject/amphtml.git","directory":"extensions/amp-date-display/1.0"},"homepage":"https://github.com/ampproject/amphtml/tree/main/extensions/amp-date-display/1.0","peerDependencies":{"preact":"^10.2.1","react":"^17.0.0"},"dependencies":{"@bentoproject/core":"0.2210142102.0"},"readme":"# Bento Date Display\n\nDisplays time data that you can render in your page. By providing specific [attributes](#attributes) in the Bento Date Display tag, the Bento Date Display extension returns a list of time parameters, which you can pass to [an amp-mustache template](../../amp-mustache/amp-mustache.md) for rendering. Refer to the [list below for each returned time parameter](#returned-time-parameters).\n\n## Web Component\n\nYou must include each Bento component's required CSS library to guarantee proper loading and before adding custom styles. Or use the light-weight pre-upgrade styles available inline. See [Layout and style](#layout-and-style).\n\n### Example: Import via npm\n\nInstall via npm:\n\n```sh\nnpm install @bentoproject/bento-date-display\n```\n\n```javascript\nimport {defineElement as defineBentoDateDisplay} from '@bentoproject/bento-date-display';\ndefineBentoDateDisplay();\n```\n\n### Include via `<script>`\n\n```html\n<script type=\"module\" src=\"https://cdn.ampproject.org/bento.mjs\" crossorigin=\"anonymous\"></script>\n<script nomodule src=\"https://cdn.ampproject.org/bento.js\" crossorigin=\"anonymous\"></script>\n<!-- Include bento-mustache.js to use mustache templates with this component -->\n<script async src=\"https://cdn.ampproject.org/v0/bento-mustache.js\"></script>\n<script type=\"module\" src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.mjs\" crossorigin=\"anonymous\"></script>\n<script nomodule src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.js\" crossorigin=\"anonymous\"></script>\n<link rel=\"stylesheet\" href=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.css\" crossorigin=\"anonymous\">\n```\n\n### Example\n\n```html\n<!DOCTYPE html>\n<html>\n  <head>\n    <script\n      type=\"module\"\n      async\n      src=\"https://cdn.ampproject.org/bento.mjs\"\n    ></script>\n    <script nomodule src=\"https://cdn.ampproject.org/bento.js\"></script>\n    <script async src=\"https://cdn.ampproject.org/v0/bento-mustache.js\"></script>\n    <script\n      type=\"module\"\n      async\n      src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.mjs\"\n    ></script>\n    <script\n      nomodule\n      async\n      src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.js\"\n    ></script>\n    <link\n      rel=\"stylesheet\"\n      type=\"text/css\"\n      href=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.css\"\n    />\n  </head>\n  <body>\n    <bento-date-display\n      datetime=\"2021-09-09T16:02:08.494Z\"\n      displayIn=\"utc\"\n      locale=\"en-GB\"\n    >\n      <template>\n        <div>ISO: {{iso}}; locale: {{localeString}}</div>\n      </template>\n    </bento-date-display>\n  </body>\n</html>\n```\n\n### Interactivity and API usage\n\nThe Bento Date Display component does not have an imperative API. However, the Bento Date Display Web Component will render a mustache-template, provided by the consumer in a `<template>` tag with `type=\"amp-mustache\"`. This template may interpolate date-related parameters. See the [Returned Time Parameters section](#returned-time-parameters) for a full list of all the available parameters.\n\n### Layout and style\n\nEach Bento component has a small CSS library you must include to guarantee proper loading without [content shifts](https://web.dev/cls/). Because of order-based specificity, you must manually ensure that stylesheets are included before any custom styles.\n\n```html\n<link rel=\"stylesheet\" type=\"text/css\" href=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.css\">\n```\n\nAlternatively, you may also make the light-weight pre-upgrade styles available inline:\n\n```html\n<style data-bento-boilerplate>\n  bento-date-display {\n    display: block;\n    overflow: hidden;\n    position: relative;\n  }\n</style>\n```\n\n### Attributes\n\n#### `datetime`\n\nThe `datetime` attribute specifies the date and time in a standard ISO 8601 date\nstring (e.g. 2017-08-02T15:05:05.000Z) or the string `now`. If set to `now`,\n`bento-date-display` will use the time the page loaded to render its template.\n\n#### `timestamp-ms`\n\nThe `timestamp-ms` attribute specifies the date and time using the number of\nmilliseconds since 1970-01-01T0:00:00.000Z\n\n#### `timestamp-seconds`\n\nThe `timestamp-seconds` attribute specifies the date and time using the number\nof seconds since 1970-01-01T0:00:00.000Z\n\n#### `locale` (optional)\n\nAn internationalization language string for each timer unit. The default value\nis `en` (for English). This attribute supports all values that are supported by\nthe user's browser.\n\n#### `display-in` (optional)\n\nIf set to the value `utc`, the `display-in` attribute will convert the given\ndate to UTC.\n\n#### `offset-seconds` (optional)\n\nThe `offset-seconds` attribute specifies an integer number of seconds to shift\nthe given date.\n\n#### `data-options-\\*` (optional)\n\nThe `data-options-*` supports all the options under [Intl.DateTimeFormat.options](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/DateTimeFormat#parameters)\nparameter that specifies the formatting style to use for `localeString` format.\nValid attributes include: `data-options-date-style`, `data-options-time-style`, etc.\n\nNote that if `display-in` attrubute is set to `utc`, the value of\n`data-options-time-zone` will automatically be converted to `UTC`.\n\n### Styling\n\nYou may use the `bento-date-display` element selector to style the Bento Date Display component freely.\n\n---\n\n## Preact/React Component\n\n### Import via npm\n\n```sh\nnpm install @bentoproject/date-display\n```\n\n```javascript\nimport React from 'react';\nimport {BentoDateDisplay} from '@bentoproject/date-display/react';\nimport '@bentoproject/date-display/styles.css';\n\nfunction App() {\n  return (\n    <BentoDateDisplay\n      datetime={dateTime}\n      displayIn={displayIn}\n      locale={locale}\n      render={(date) => (\n        <div>{`ISO: ${date.iso}; locale: ${date.localeString}`}</div>\n      )}\n    />\n  );\n}\n```\n\n### Interactivity and API usage\n\nThe Bento Date Display component does not have an imperative API. However, the Bento Date Display Preact/React component does accept a `render` prop that renders the consumer's template. This `render` prop should be a function which the Bento Date Display Preact/React component can use to render its template. The `render` callback will be provided a variety of date-related parameters for consumers to interpolate in the rendered template. See the [`render` prop section](#render) for more information.\n\n### Layout and style\n\nThe Bento Date Display Preact/React component allows consumers to render their own templates. These templates may use inline styles, `<style>` tags, Preact/React components that import their own stylesheets.\n\n### Props\n\n#### `datetime`\n\nRequired prop. Denotes the date and time as a Date, String, or Number. If String, must be a standard ISO 8601 date string (e.g. 2017-08-02T15:05:05.000Z) or the string `now`. If set to `now`, it will use the time the page loaded to render its template. If Number, must be a POSIX epoch value in milliseconds.\n\n#### `displayIn`\n\nOptional prop that can be either `\"utc\"` or `\"local\"` and defaults to `\"local\"`. This prop indicates what timezone to display the date in. If set to the value `\"utc\"`, the component will convert the given date to UTC.\n\n#### `locale`\n\nAn internationalization language string for each timer unit. The default value is `en` (for English). This prop supports all values that are supported by the user's browser.\n\n#### `localeOptions`\n\nThe `localeOptions` object supports all the options under [Intl.DateTimeFormat.options](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/DateTimeFormat#parameters) parameter that specifies the formatting style to use for `localeString` format.\n\nNote that if the `displayIn` prop is set to `utc`, the value of `localeOptions.timeZone` will automatically be converted to `UTC`.\n\n#### `render`\n\nOptional callback that should render a template. The callback will be provided an object with properties/values related to the date expressed in `datetime`.\n\nBy default, the Bento Date Display component will display the [`localeString` form of the Date](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/toLocaleString) for the given locale and localeOption. See the [Returned Time Parameters section](#returned-time-parameters) for more details on how each property will be displayed.\n\n```typescript\n(dateParams: DateParams) => JSXInternal.Element\ninterface DateParams {\n  day: number;\n  dayName: string;\n  dayNameShort: string;\n  dayPeriod: string;\n  dayTwoDigit: string;\n  hour: number;\n  hour12: number;\n  hour12TwoDigit: string;\n  hourTwoDigit: string;\n  iso: string;\n  localeString: string;\n  minute: number;\n  minuteTwoDigit: string;\n  month: number;\n  monthName: string;\n  monthNameShort: string;\n  monthTwoDigit: string;\n  second: number;\n  secondTwoDigit: string;\n  timeZoneName: string;\n  timeZoneNameShort: string;\n  year: number;\n  yearTwoDi: string;\n}\n```\n\n### Returned Time Parameters\n\nThis table lists the format you can specify in your Mustache template:\n\n| Format            | Meaning                                                       |\n| ----------------- | ------------------------------------------------------------- |\n| day               | 1, 2, ...12, 13, etc.                                         |\n| dayName           | string,                                                       |\n| dayNameShort      | string,                                                       |\n| dayPeriod         | string,                                                       |\n| dayTwoDigit       | 01, 02, 03, ..., 12, 13, etc.                                 |\n| hour              | 0, 1, 2, 3, ..., 12, 13, ..., 22, 23                          |\n| hour12            | 1, 2, 3, ..., 12, 1, 2, ..., 11, 12                           |\n| hour12TwoDigit    | 01, 02, ..., 12, 01, 02, ..., 11, 12                          |\n| hourTwoDigit      | 00, 01, 02, ..., 12, 13, ..., 22, 23                          |\n| iso               | A standard ISO8601 date string e.g. 2019-01-23T15:31:21.213Z, |\n| localeString      | A string with a language sensitive representation.            |\n| minute            | 0, 1, 2, ..., 58, 59                                          |\n| minuteTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| month             | 1, 2, 3, ..., 12                                              |\n| monthName         | Internationalized month name string.                          |\n| monthNameShort    | Internationalized abbreviated month name string.,             |\n| monthTwoDigit     | 01, 02, ..., 11, 12                                           |\n| second            | 0, 1, 2, ..., 58, 59                                          |\n| secondTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| timeZoneName      | Internationalized timezone, like `Pacific Daylight Time`      |\n| timeZoneNameShort | Internationalized timezone, abbreviated, like `PST`           |\n| year              | 0, 1, 2, ..., 1999, 2000, 2001, etc.                          |\n| yearTwoDigit      | 00, 01, 02, ..., 17, 18, 19, ..., 98, 99                      |\n","readmeFilename":"README.md","gitHead":"4cbbe2b23e7b0c5b0c005c94a574ea48a45f7693","bugs":{"url":"https://github.com/ampproject/amphtml/issues"},"_id":"@bentoproject/date-display@1.2210142102.0","_nodeVersion":"16.17.1","_npmVersion":"8.15.0","dist":{"integrity":"sha512-PCAeF8U1meCkxMMqbjYLzWR/h/d1M6ES/0W4J7U1QdfJiw0MQALtZy14aw52i3ZiTJaXNk3rC4d/d4WAEMTS6A==","shasum":"4f9cf265c3995b935329aad832992257ee062d42","tarball":"https://registry.npmjs.org/@bentoproject/date-display/-/date-display-1.2210142102.0.tgz","fileCount":29,"unpackedSize":677013,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCs2ks29u4wjYeYR/ag8DfxY5AGspBVmsd7SrmswYiSeQIhAJ5krertmztMBpLkBa85bFiPP7BQbcyOL86mYUCkQX0b"}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjSm4FACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmq2lw//Uw04RtAlLzUXv+FClslNVFIt0Ih9aDNnW2baumaAYZbucIDv\r\nu38gMilnG5n9r8WDW4Fm+RdXcoEQP5PEjEPXovxQB0p78rib1L2vCzri1HlU\r\n01GHH2WvzRpei3u0Fo0nyzkoOLuv/RUeFN2YUkzGqHcPUZ1u0CfXCJCG0lNh\r\nRqtmFnX4/Jrmegom2LUqLF22V40Bom6FxntyUogT/FdBb/1vKVCpcWBYes6F\r\nm0Cll85fxR+i/0G2rM8jE6aBkP8EwlhuPOOuIRNcoJfTPaAP+TFZzV2l4Gg5\r\n+mBoC/kAU1JCLtJlme9GI8CvzVBlbc3jlI47QXN+SDzoPAb/ddxVpun9jbI8\r\ny6IJVe6WoBtfFC+pZvNm3cAwSxfh2WdAXJdeNo2qL8T3s6bmIUTe3qIw7SKb\r\n8zhR+3yomM7K7ahZcJpHunVLYTtyS9DHXdLWLuQgr/r7IbgTiDGa0jdkWvpa\r\n5XYqo/VHIrW/bnTnwVnUPDFZqXH6qFG6YNB3t6e2wmjTIk057N2HqusFhfLg\r\nQbzOW2wZRqPkAQMCGYnVDJlRVM7wuQdO/IzbVygEJDTgaXYBi3BHUjkC3eHu\r\nowkzMRyDENR/HFyPR+2cZmVZbh6uK4mwf2TWGgj+5kF62IAX49hTJFTXHNnB\r\n7ZF3nFTmPBAuzEcFOWUg0s8cA7atyUjR61o=\r\n=s6+0\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"bentoprojectbot","email":"bentobot@amp.dev"},"directories":{},"maintainers":[{"name":"bentoprojectbot","email":"bentobot@amp.dev"},{"name":"kristoferbaxter","email":"kbax@me.com"},{"name":"esth","email":"esther@amp.dev"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/date-display_1.2210142102.0_1665822212978_0.9562518801581212"},"_hasShrinkwrap":false},"1.2210172057.0":{"name":"@bentoproject/date-display","version":"1.2210172057.0","description":"Displays time data that you can render in your page.","author":{"name":"Bento Authors"},"license":"Apache-2.0","main":"./dist/web-component.js","module":"./dist/web-component.module.js","exports":{".":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./web-component":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./preact":{"import":"./dist/component-preact.module.js","require":"./dist/component-preact.js"},"./react":{"import":"./dist/component-react.module.js","require":"./dist/component-react.js"},"./web-component.css":"./dist/web-component.css"},"repository":{"type":"git","url":"git+https://github.com/ampproject/amphtml.git","directory":"extensions/amp-date-display/1.0"},"homepage":"https://github.com/ampproject/amphtml/tree/main/extensions/amp-date-display/1.0","peerDependencies":{"preact":"^10.2.1","react":"^17.0.0"},"dependencies":{"@bentoproject/core":"0.2210172057.0"},"gitHead":"fde225e8d98aa5d96a939351e6e53cc7abb13cf6","bugs":{"url":"https://github.com/ampproject/amphtml/issues"},"_id":"@bentoproject/date-display@1.2210172057.0","_nodeVersion":"16.17.1","_npmVersion":"8.15.0","dist":{"integrity":"sha512-ikAR0IgVOfjdkD01UdgqKs9hH22BHsFecfi0j2/5/XxHcLFlwXEgKH/TJmJaadW5UOUd59dGo9dR2olVKTe4VA==","shasum":"eba7f868df8f9222343a42c4c87896387f841c08","tarball":"https://registry.npmjs.org/@bentoproject/date-display/-/date-display-1.2210172057.0.tgz","fileCount":29,"unpackedSize":677013,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQC3klJxEMPBk1VSsDlTYk9QRG+qc8b1cgmuTgQOl68RagIhAKrzU95j2X8S9nRgT8IifA2V2WMzpqyuhvIkWQ/sfQd/"}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjTmODACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpKYw/9EAmaigpCSdOzJhDHerLZlBhL3ZfdPQP+o/25KLtEAlhD39oh\r\ntc3RQ7fLjvKWWXufrfEb6aZz9IwrAJ8pD3mqmw4AG3Gql+35UuXZ+gOaFTw5\r\ndbP/pBj4Md+8mJL8wOk5EVQsNOXxdGEBYOvQs4b4YYvNRKx3n7OpRw3mSWOJ\r\ny881xKeiOaMJ8lTKoAn35n9jaIVlg5GXhV/kKFN6OOR52Y8GCGV0tsUM2y/U\r\nKcxRQViooqCcGiPnwRSECUdhDdnGHa95nJBts5PKe3DNoV74Jt4stka/dCxg\r\nAI5sShAvRM6dsuiN0qYMBPKQJk1hZxGEU4YnDP2v1bX0C7RouYeOqtyiHHme\r\nnlGVdvuqvXeRzVpsGPcXmNKLococoL9uuEfDignObwZNDT+OUhMWFct5egAm\r\nPzAmkfyFnAgN74Hk67j74XUv0KcjfWNjsg0mV3OmKupAczEoZ76z/IpMnqJ7\r\nRNWwKd3Okt2LfLy4/7FiRPGQ5QBKRanJoRg4KUQ9DFipWeZOMuJtE4rbn5CP\r\n3P2KNm7S+UoT2Eg9qArANPpOoTTFGjyrhxOnDdgegCzw/ny1XK9MCVftss47\r\nLtb3H+kAXxeJAIANkiHe/hr5eWOKm3uLutUJgtZc7R3c/Ez2MAR5yTcNFVn6\r\nU2BYmGPnwUr0nokB4ZbRZkwJhHRs3hWukXA=\r\n=CN6P\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"bentoprojectbot","email":"bentobot@amp.dev"},"directories":{},"maintainers":[{"name":"bentoprojectbot","email":"bentobot@amp.dev"},{"name":"kristoferbaxter","email":"kbax@me.com"},{"name":"esth","email":"esther@amp.dev"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/date-display_1.2210172057.0_1666081666921_0.812826719149625"},"_hasShrinkwrap":false},"1.2210191347.0":{"name":"@bentoproject/date-display","version":"1.2210191347.0","description":"Displays time data that you can render in your page.","author":{"name":"Bento Authors"},"license":"Apache-2.0","main":"./dist/web-component.js","module":"./dist/web-component.module.js","exports":{".":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./web-component":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./preact":{"import":"./dist/component-preact.module.js","require":"./dist/component-preact.js"},"./react":{"import":"./dist/component-react.module.js","require":"./dist/component-react.js"},"./web-component.css":"./dist/web-component.css"},"repository":{"type":"git","url":"git+https://github.com/ampproject/amphtml.git","directory":"extensions/amp-date-display/1.0"},"homepage":"https://github.com/ampproject/amphtml/tree/main/extensions/amp-date-display/1.0","peerDependencies":{"preact":"^10.2.1","react":"^17.0.0"},"dependencies":{"@bentoproject/core":"0.2210191347.0"},"readme":"# Bento Date Display\n\nDisplays time data that you can render in your page. By providing specific [attributes](#attributes) in the Bento Date Display tag, the Bento Date Display extension returns a list of time parameters, which you can pass to [an amp-mustache template](../../amp-mustache/amp-mustache.md) for rendering. Refer to the [list below for each returned time parameter](#returned-time-parameters).\n\n## Web Component\n\nYou must include each Bento component's required CSS library to guarantee proper loading and before adding custom styles. Or use the light-weight pre-upgrade styles available inline. See [Layout and style](#layout-and-style).\n\n### Example: Import via npm\n\nInstall via npm:\n\n```sh\nnpm install @bentoproject/bento-date-display\n```\n\n```javascript\nimport {defineElement as defineBentoDateDisplay} from '@bentoproject/bento-date-display';\ndefineBentoDateDisplay();\n```\n\n### Include via `<script>`\n\n```html\n<script type=\"module\" src=\"https://cdn.ampproject.org/bento.mjs\" crossorigin=\"anonymous\"></script>\n<script nomodule src=\"https://cdn.ampproject.org/bento.js\" crossorigin=\"anonymous\"></script>\n<!-- Include bento-mustache.js to use mustache templates with this component -->\n<script async src=\"https://cdn.ampproject.org/v0/bento-mustache.js\"></script>\n<script type=\"module\" src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.mjs\" crossorigin=\"anonymous\"></script>\n<script nomodule src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.js\" crossorigin=\"anonymous\"></script>\n<link rel=\"stylesheet\" href=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.css\" crossorigin=\"anonymous\">\n```\n\n### Example\n\n```html\n<!DOCTYPE html>\n<html>\n  <head>\n    <script\n      type=\"module\"\n      async\n      src=\"https://cdn.ampproject.org/bento.mjs\"\n    ></script>\n    <script nomodule src=\"https://cdn.ampproject.org/bento.js\"></script>\n    <script async src=\"https://cdn.ampproject.org/v0/bento-mustache.js\"></script>\n    <script\n      type=\"module\"\n      async\n      src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.mjs\"\n    ></script>\n    <script\n      nomodule\n      async\n      src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.js\"\n    ></script>\n    <link\n      rel=\"stylesheet\"\n      type=\"text/css\"\n      href=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.css\"\n    />\n  </head>\n  <body>\n    <bento-date-display\n      datetime=\"2021-09-09T16:02:08.494Z\"\n      displayIn=\"utc\"\n      locale=\"en-GB\"\n    >\n      <template>\n        <div>ISO: {{iso}}; locale: {{localeString}}</div>\n      </template>\n    </bento-date-display>\n  </body>\n</html>\n```\n\n### Interactivity and API usage\n\nThe Bento Date Display component does not have an imperative API. However, the Bento Date Display Web Component will render a mustache-template, provided by the consumer in a `<template>` tag with `type=\"amp-mustache\"`. This template may interpolate date-related parameters. See the [Returned Time Parameters section](#returned-time-parameters) for a full list of all the available parameters.\n\n### Layout and style\n\nEach Bento component has a small CSS library you must include to guarantee proper loading without [content shifts](https://web.dev/cls/). Because of order-based specificity, you must manually ensure that stylesheets are included before any custom styles.\n\n```html\n<link rel=\"stylesheet\" type=\"text/css\" href=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.css\">\n```\n\nAlternatively, you may also make the light-weight pre-upgrade styles available inline:\n\n```html\n<style data-bento-boilerplate>\n  bento-date-display {\n    display: block;\n    overflow: hidden;\n    position: relative;\n  }\n</style>\n```\n\n### Attributes\n\n#### `datetime`\n\nThe `datetime` attribute specifies the date and time in a standard ISO 8601 date\nstring (e.g. 2017-08-02T15:05:05.000Z) or the string `now`. If set to `now`,\n`bento-date-display` will use the time the page loaded to render its template.\n\n#### `timestamp-ms`\n\nThe `timestamp-ms` attribute specifies the date and time using the number of\nmilliseconds since 1970-01-01T0:00:00.000Z\n\n#### `timestamp-seconds`\n\nThe `timestamp-seconds` attribute specifies the date and time using the number\nof seconds since 1970-01-01T0:00:00.000Z\n\n#### `locale` (optional)\n\nAn internationalization language string for each timer unit. The default value\nis `en` (for English). This attribute supports all values that are supported by\nthe user's browser.\n\n#### `display-in` (optional)\n\nIf set to the value `utc`, the `display-in` attribute will convert the given\ndate to UTC.\n\n#### `offset-seconds` (optional)\n\nThe `offset-seconds` attribute specifies an integer number of seconds to shift\nthe given date.\n\n#### `data-options-\\*` (optional)\n\nThe `data-options-*` supports all the options under [Intl.DateTimeFormat.options](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/DateTimeFormat#parameters)\nparameter that specifies the formatting style to use for `localeString` format.\nValid attributes include: `data-options-date-style`, `data-options-time-style`, etc.\n\nNote that if `display-in` attrubute is set to `utc`, the value of\n`data-options-time-zone` will automatically be converted to `UTC`.\n\n### Styling\n\nYou may use the `bento-date-display` element selector to style the Bento Date Display component freely.\n\n---\n\n## Preact/React Component\n\n### Import via npm\n\n```sh\nnpm install @bentoproject/date-display\n```\n\n```javascript\nimport React from 'react';\nimport {BentoDateDisplay} from '@bentoproject/date-display/react';\nimport '@bentoproject/date-display/styles.css';\n\nfunction App() {\n  return (\n    <BentoDateDisplay\n      datetime={dateTime}\n      displayIn={displayIn}\n      locale={locale}\n      render={(date) => (\n        <div>{`ISO: ${date.iso}; locale: ${date.localeString}`}</div>\n      )}\n    />\n  );\n}\n```\n\n### Interactivity and API usage\n\nThe Bento Date Display component does not have an imperative API. However, the Bento Date Display Preact/React component does accept a `render` prop that renders the consumer's template. This `render` prop should be a function which the Bento Date Display Preact/React component can use to render its template. The `render` callback will be provided a variety of date-related parameters for consumers to interpolate in the rendered template. See the [`render` prop section](#render) for more information.\n\n### Layout and style\n\nThe Bento Date Display Preact/React component allows consumers to render their own templates. These templates may use inline styles, `<style>` tags, Preact/React components that import their own stylesheets.\n\n### Props\n\n#### `datetime`\n\nRequired prop. Denotes the date and time as a Date, String, or Number. If String, must be a standard ISO 8601 date string (e.g. 2017-08-02T15:05:05.000Z) or the string `now`. If set to `now`, it will use the time the page loaded to render its template. If Number, must be a POSIX epoch value in milliseconds.\n\n#### `displayIn`\n\nOptional prop that can be either `\"utc\"` or `\"local\"` and defaults to `\"local\"`. This prop indicates what timezone to display the date in. If set to the value `\"utc\"`, the component will convert the given date to UTC.\n\n#### `locale`\n\nAn internationalization language string for each timer unit. The default value is `en` (for English). This prop supports all values that are supported by the user's browser.\n\n#### `localeOptions`\n\nThe `localeOptions` object supports all the options under [Intl.DateTimeFormat.options](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/DateTimeFormat#parameters) parameter that specifies the formatting style to use for `localeString` format.\n\nNote that if the `displayIn` prop is set to `utc`, the value of `localeOptions.timeZone` will automatically be converted to `UTC`.\n\n#### `render`\n\nOptional callback that should render a template. The callback will be provided an object with properties/values related to the date expressed in `datetime`.\n\nBy default, the Bento Date Display component will display the [`localeString` form of the Date](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/toLocaleString) for the given locale and localeOption. See the [Returned Time Parameters section](#returned-time-parameters) for more details on how each property will be displayed.\n\n```typescript\n(dateParams: DateParams) => JSXInternal.Element\ninterface DateParams {\n  day: number;\n  dayName: string;\n  dayNameShort: string;\n  dayPeriod: string;\n  dayTwoDigit: string;\n  hour: number;\n  hour12: number;\n  hour12TwoDigit: string;\n  hourTwoDigit: string;\n  iso: string;\n  localeString: string;\n  minute: number;\n  minuteTwoDigit: string;\n  month: number;\n  monthName: string;\n  monthNameShort: string;\n  monthTwoDigit: string;\n  second: number;\n  secondTwoDigit: string;\n  timeZoneName: string;\n  timeZoneNameShort: string;\n  year: number;\n  yearTwoDi: string;\n}\n```\n\n### Returned Time Parameters\n\nThis table lists the format you can specify in your Mustache template:\n\n| Format            | Meaning                                                       |\n| ----------------- | ------------------------------------------------------------- |\n| day               | 1, 2, ...12, 13, etc.                                         |\n| dayName           | string,                                                       |\n| dayNameShort      | string,                                                       |\n| dayPeriod         | string,                                                       |\n| dayTwoDigit       | 01, 02, 03, ..., 12, 13, etc.                                 |\n| hour              | 0, 1, 2, 3, ..., 12, 13, ..., 22, 23                          |\n| hour12            | 1, 2, 3, ..., 12, 1, 2, ..., 11, 12                           |\n| hour12TwoDigit    | 01, 02, ..., 12, 01, 02, ..., 11, 12                          |\n| hourTwoDigit      | 00, 01, 02, ..., 12, 13, ..., 22, 23                          |\n| iso               | A standard ISO8601 date string e.g. 2019-01-23T15:31:21.213Z, |\n| localeString      | A string with a language sensitive representation.            |\n| minute            | 0, 1, 2, ..., 58, 59                                          |\n| minuteTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| month             | 1, 2, 3, ..., 12                                              |\n| monthName         | Internationalized month name string.                          |\n| monthNameShort    | Internationalized abbreviated month name string.,             |\n| monthTwoDigit     | 01, 02, ..., 11, 12                                           |\n| second            | 0, 1, 2, ..., 58, 59                                          |\n| secondTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| timeZoneName      | Internationalized timezone, like `Pacific Daylight Time`      |\n| timeZoneNameShort | Internationalized timezone, abbreviated, like `PST`           |\n| year              | 0, 1, 2, ..., 1999, 2000, 2001, etc.                          |\n| yearTwoDigit      | 00, 01, 02, ..., 17, 18, 19, ..., 98, 99                      |\n","readmeFilename":"README.md","gitHead":"b2888af97582abcfae901ed340328b22e9caf2fc","bugs":{"url":"https://github.com/ampproject/amphtml/issues"},"_id":"@bentoproject/date-display@1.2210191347.0","_nodeVersion":"16.17.1","_npmVersion":"8.15.0","dist":{"integrity":"sha512-JX1/vVcuxH02d8vbELNfmh+iRD3mi2viUyrf2NS56yYTh6LZAN843k2icjR5ZR02aXEJmOI3GIT7JdYIh3WIqQ==","shasum":"12b983a7855064b13c3546c7d37b96b07e839def","tarball":"https://registry.npmjs.org/@bentoproject/date-display/-/date-display-1.2210191347.0.tgz","fileCount":29,"unpackedSize":677013,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIBJl8AaxQuEWYyjs/nNOHP12k5NFK68QK8Yc8/hvnjO+AiEAgeaqGfBdjbdzJsGC2ajpBizcnQtL7OraErlsp/OBQ7k="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjUQXBACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrKYQ/+LrnXDhyBOVIbwsk9YardZKDiOqvQSnwIo2cBZiv/o36C0R6q\r\nhYuzaWLnPV12gN1SyBmeGOaPXEvCx5Bbly4parN/+S1Wb1+9Lcd9cBKCtSN3\r\nIrSTUrCSoyDBrJVLXOiXwMpangyqbVV6LKVOzXWQ/kUGQm2exHPWmb3XdWns\r\nu8pP+xQMUIuxE/JkZSTX/7U2D9H5blhKsiqUBY9YIBY2cbns/GfZFeC4Jomg\r\ndGgz9JDY2ebFQ2YRakStc3ky0x0hhHUnJpbR1SU/c01H0hENPtVnqOcviMUe\r\nk3cGyQ8obaPBHMZU4vBVeq06Esvj4wczATUqtWNEU+h9xSzcnfgMtsoB1Nbb\r\nr7jJbw2tiPJVHk3TuSkMA8z+IBFcRQ127mWKB+U91SKrlvi4jQ/IHWLIZNRK\r\n5ULhZvYrgHJtjT2ZDlfyGs8x1gQojrijs27sBVyiPfr7nv47PdM+tyjCwjci\r\nDQgQ21HjwdC7J+fVCkVx1RwKBdDyjPi7jiZvWPmgRy4t2Wqkf2vO/LZFrMhQ\r\nt3OMAo+QfvDmxm121ickG1aOCHaIYJnJCH1XJ3f66zJ4rIfRC7kq9RfWJFqu\r\nOeLOqZo0BNEr/DKlDUepw3gX0wHcHIU8IstRqxbeAie51OdD5Eci/k7jOaO+\r\nolHtGIS/8SSQGItQCTJCR8QQ8iBjeWpmquU=\r\n=xf/W\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"bentoprojectbot","email":"bentobot@amp.dev"},"directories":{},"maintainers":[{"name":"bentoprojectbot","email":"bentobot@amp.dev"},{"name":"kristoferbaxter","email":"kbax@me.com"},{"name":"esth","email":"esther@amp.dev"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/date-display_1.2210191347.0_1666254273627_0.5856991770370479"},"_hasShrinkwrap":false},"1.2210211855.0":{"name":"@bentoproject/date-display","version":"1.2210211855.0","description":"Displays time data that you can render in your page.","author":{"name":"Bento Authors"},"license":"Apache-2.0","main":"./dist/web-component.js","module":"./dist/web-component.module.js","exports":{".":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./web-component":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./preact":{"import":"./dist/component-preact.module.js","require":"./dist/component-preact.js"},"./react":{"import":"./dist/component-react.module.js","require":"./dist/component-react.js"},"./web-component.css":"./dist/web-component.css"},"repository":{"type":"git","url":"git+https://github.com/ampproject/amphtml.git","directory":"extensions/amp-date-display/1.0"},"homepage":"https://github.com/ampproject/amphtml/tree/main/extensions/amp-date-display/1.0","peerDependencies":{"preact":"^10.2.1","react":"^17.0.0"},"dependencies":{"@bentoproject/core":"0.2210211855.0"},"gitHead":"07d99f82baf83d9f0162a6c7b8790cef43e820fa","bugs":{"url":"https://github.com/ampproject/amphtml/issues"},"_id":"@bentoproject/date-display@1.2210211855.0","_nodeVersion":"16.17.1","_npmVersion":"8.15.0","dist":{"integrity":"sha512-LMuTONJVmsj3T413frWZhV2Q+xoQ6RB6PJ05+0IfIovKIoCHovA8d34LKSdRuT+dhL7PuZDKGWtyzb0tYClZAg==","shasum":"69f7a804aa2c14f85430cb16b62b295992d721f1","tarball":"https://registry.npmjs.org/@bentoproject/date-display/-/date-display-1.2210211855.0.tgz","fileCount":29,"unpackedSize":677013,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIH8hYwfZNKgnOtv5Ej+5Pb6ngs3DfJMQYKBzbmqrG6f9AiEAmac4yLupCdmW7RDuWr5FoSmmeuaITHjJiFIt7f2mhaQ="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjU6hjACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmr+FQ//foMMfu2wnHfB6u7vZs3HRl7TZ9sDRIzk8H9O2fJE98O1HKk/\r\ng92I77FHv2+DQKYV3SZqAxFHpvx5yqb7UUS+/LfwLi+1pyjL2OJRWadTu+h8\r\nJnPbzyxFbvTBsGGTNCJyLLiZHBpRfXRdFOmRlvcaUgVAgUjPPFtN5pAJ0eFO\r\nzG/6hOpeTjtZO1jcOeNwu4IQrPNdeNIsD7IjQf8LTS57pFZgQDonOk5TZ+Ch\r\nQiDXxN1cOVWdRmrSoMBEQTXB9u/HiaiK3CRDxSzpgbvCUS+eVqeRMv01dVUQ\r\nzu29JPW5FEhMgPWrZpwmgH1x1UR16+nKdJafr+994H7ugk6VXQdspqaLoZCD\r\nssz1R+OnQO1bj05dqGdz6k4nHJjhW33YvBU3/tz2xWk+zcTS0Zw+TIw2r9un\r\nDbH/2iNXeVtjXtLr2pMPl0GYcCtl3TAEardUcPj6nzGtuYCy6kQTfQ7zww3s\r\nMLSZz2quBH6Utf4G7Erg3iGvoTVewyae9Vccv8acipyPun/Hs2wQCIfxqdto\r\n3tJh2TG1w77T+70asexN4OmQUpFhs+Y637uZbrcJW7iZAKViN6YcpZ6Vx5Cb\r\nXOZJoTozXPk8qNVzo0hIZ4YIvWggjsV4VqV2za/hQNOoO26oVI7/vBYhvIdM\r\nC5L0jVqQWFAikNF2brWQ88JLm1k8dGY+8rg=\r\n=c6Uw\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"bentoprojectbot","email":"bentobot@amp.dev"},"directories":{},"maintainers":[{"name":"bentoprojectbot","email":"bentobot@amp.dev"},{"name":"kristoferbaxter","email":"kbax@me.com"},{"name":"esth","email":"esther@amp.dev"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/date-display_1.2210211855.0_1666426979610_0.8392297942555649"},"_hasShrinkwrap":false},"1.2210251605.0":{"name":"@bentoproject/date-display","version":"1.2210251605.0","description":"Displays time data that you can render in your page.","author":{"name":"Bento Authors"},"license":"Apache-2.0","main":"./dist/web-component.js","module":"./dist/web-component.module.js","exports":{".":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./web-component":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./preact":{"import":"./dist/component-preact.module.js","require":"./dist/component-preact.js"},"./react":{"import":"./dist/component-react.module.js","require":"./dist/component-react.js"},"./web-component.css":"./dist/web-component.css"},"repository":{"type":"git","url":"git+https://github.com/ampproject/amphtml.git","directory":"extensions/amp-date-display/1.0"},"homepage":"https://github.com/ampproject/amphtml/tree/main/extensions/amp-date-display/1.0","peerDependencies":{"preact":"^10.2.1","react":"^17.0.0"},"dependencies":{"@bentoproject/core":"0.2210251605.0"},"readme":"# Bento Date Display\n\nDisplays time data that you can render in your page. By providing specific [attributes](#attributes) in the Bento Date Display tag, the Bento Date Display extension returns a list of time parameters, which you can pass to [an amp-mustache template](../../amp-mustache/amp-mustache.md) for rendering. Refer to the [list below for each returned time parameter](#returned-time-parameters).\n\n## Web Component\n\nYou must include each Bento component's required CSS library to guarantee proper loading and before adding custom styles. Or use the light-weight pre-upgrade styles available inline. See [Layout and style](#layout-and-style).\n\n### Example: Import via npm\n\nInstall via npm:\n\n```sh\nnpm install @bentoproject/bento-date-display\n```\n\n```javascript\nimport {defineElement as defineBentoDateDisplay} from '@bentoproject/bento-date-display';\ndefineBentoDateDisplay();\n```\n\n### Include via `<script>`\n\n```html\n<script type=\"module\" src=\"https://cdn.ampproject.org/bento.mjs\" crossorigin=\"anonymous\"></script>\n<script nomodule src=\"https://cdn.ampproject.org/bento.js\" crossorigin=\"anonymous\"></script>\n<!-- Include bento-mustache.js to use mustache templates with this component -->\n<script async src=\"https://cdn.ampproject.org/v0/bento-mustache.js\"></script>\n<script type=\"module\" src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.mjs\" crossorigin=\"anonymous\"></script>\n<script nomodule src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.js\" crossorigin=\"anonymous\"></script>\n<link rel=\"stylesheet\" href=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.css\" crossorigin=\"anonymous\">\n```\n\n### Example\n\n```html\n<!DOCTYPE html>\n<html>\n  <head>\n    <script\n      type=\"module\"\n      async\n      src=\"https://cdn.ampproject.org/bento.mjs\"\n    ></script>\n    <script nomodule src=\"https://cdn.ampproject.org/bento.js\"></script>\n    <script async src=\"https://cdn.ampproject.org/v0/bento-mustache.js\"></script>\n    <script\n      type=\"module\"\n      async\n      src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.mjs\"\n    ></script>\n    <script\n      nomodule\n      async\n      src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.js\"\n    ></script>\n    <link\n      rel=\"stylesheet\"\n      type=\"text/css\"\n      href=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.css\"\n    />\n  </head>\n  <body>\n    <bento-date-display\n      datetime=\"2021-09-09T16:02:08.494Z\"\n      displayIn=\"utc\"\n      locale=\"en-GB\"\n    >\n      <template>\n        <div>ISO: {{iso}}; locale: {{localeString}}</div>\n      </template>\n    </bento-date-display>\n  </body>\n</html>\n```\n\n### Interactivity and API usage\n\nThe Bento Date Display component does not have an imperative API. However, the Bento Date Display Web Component will render a mustache-template, provided by the consumer in a `<template>` tag with `type=\"amp-mustache\"`. This template may interpolate date-related parameters. See the [Returned Time Parameters section](#returned-time-parameters) for a full list of all the available parameters.\n\n### Layout and style\n\nEach Bento component has a small CSS library you must include to guarantee proper loading without [content shifts](https://web.dev/cls/). Because of order-based specificity, you must manually ensure that stylesheets are included before any custom styles.\n\n```html\n<link rel=\"stylesheet\" type=\"text/css\" href=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.css\">\n```\n\nAlternatively, you may also make the light-weight pre-upgrade styles available inline:\n\n```html\n<style data-bento-boilerplate>\n  bento-date-display {\n    display: block;\n    overflow: hidden;\n    position: relative;\n  }\n</style>\n```\n\n### Attributes\n\n#### `datetime`\n\nThe `datetime` attribute specifies the date and time in a standard ISO 8601 date\nstring (e.g. 2017-08-02T15:05:05.000Z) or the string `now`. If set to `now`,\n`bento-date-display` will use the time the page loaded to render its template.\n\n#### `timestamp-ms`\n\nThe `timestamp-ms` attribute specifies the date and time using the number of\nmilliseconds since 1970-01-01T0:00:00.000Z\n\n#### `timestamp-seconds`\n\nThe `timestamp-seconds` attribute specifies the date and time using the number\nof seconds since 1970-01-01T0:00:00.000Z\n\n#### `locale` (optional)\n\nAn internationalization language string for each timer unit. The default value\nis `en` (for English). This attribute supports all values that are supported by\nthe user's browser.\n\n#### `display-in` (optional)\n\nIf set to the value `utc`, the `display-in` attribute will convert the given\ndate to UTC.\n\n#### `offset-seconds` (optional)\n\nThe `offset-seconds` attribute specifies an integer number of seconds to shift\nthe given date.\n\n#### `data-options-\\*` (optional)\n\nThe `data-options-*` supports all the options under [Intl.DateTimeFormat.options](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/DateTimeFormat#parameters)\nparameter that specifies the formatting style to use for `localeString` format.\nValid attributes include: `data-options-date-style`, `data-options-time-style`, etc.\n\nNote that if `display-in` attrubute is set to `utc`, the value of\n`data-options-time-zone` will automatically be converted to `UTC`.\n\n### Styling\n\nYou may use the `bento-date-display` element selector to style the Bento Date Display component freely.\n\n---\n\n## Preact/React Component\n\n### Import via npm\n\n```sh\nnpm install @bentoproject/date-display\n```\n\n```javascript\nimport React from 'react';\nimport {BentoDateDisplay} from '@bentoproject/date-display/react';\nimport '@bentoproject/date-display/styles.css';\n\nfunction App() {\n  return (\n    <BentoDateDisplay\n      datetime={dateTime}\n      displayIn={displayIn}\n      locale={locale}\n      render={(date) => (\n        <div>{`ISO: ${date.iso}; locale: ${date.localeString}`}</div>\n      )}\n    />\n  );\n}\n```\n\n### Interactivity and API usage\n\nThe Bento Date Display component does not have an imperative API. However, the Bento Date Display Preact/React component does accept a `render` prop that renders the consumer's template. This `render` prop should be a function which the Bento Date Display Preact/React component can use to render its template. The `render` callback will be provided a variety of date-related parameters for consumers to interpolate in the rendered template. See the [`render` prop section](#render) for more information.\n\n### Layout and style\n\nThe Bento Date Display Preact/React component allows consumers to render their own templates. These templates may use inline styles, `<style>` tags, Preact/React components that import their own stylesheets.\n\n### Props\n\n#### `datetime`\n\nRequired prop. Denotes the date and time as a Date, String, or Number. If String, must be a standard ISO 8601 date string (e.g. 2017-08-02T15:05:05.000Z) or the string `now`. If set to `now`, it will use the time the page loaded to render its template. If Number, must be a POSIX epoch value in milliseconds.\n\n#### `displayIn`\n\nOptional prop that can be either `\"utc\"` or `\"local\"` and defaults to `\"local\"`. This prop indicates what timezone to display the date in. If set to the value `\"utc\"`, the component will convert the given date to UTC.\n\n#### `locale`\n\nAn internationalization language string for each timer unit. The default value is `en` (for English). This prop supports all values that are supported by the user's browser.\n\n#### `localeOptions`\n\nThe `localeOptions` object supports all the options under [Intl.DateTimeFormat.options](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/DateTimeFormat#parameters) parameter that specifies the formatting style to use for `localeString` format.\n\nNote that if the `displayIn` prop is set to `utc`, the value of `localeOptions.timeZone` will automatically be converted to `UTC`.\n\n#### `render`\n\nOptional callback that should render a template. The callback will be provided an object with properties/values related to the date expressed in `datetime`.\n\nBy default, the Bento Date Display component will display the [`localeString` form of the Date](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/toLocaleString) for the given locale and localeOption. See the [Returned Time Parameters section](#returned-time-parameters) for more details on how each property will be displayed.\n\n```typescript\n(dateParams: DateParams) => JSXInternal.Element\ninterface DateParams {\n  day: number;\n  dayName: string;\n  dayNameShort: string;\n  dayPeriod: string;\n  dayTwoDigit: string;\n  hour: number;\n  hour12: number;\n  hour12TwoDigit: string;\n  hourTwoDigit: string;\n  iso: string;\n  localeString: string;\n  minute: number;\n  minuteTwoDigit: string;\n  month: number;\n  monthName: string;\n  monthNameShort: string;\n  monthTwoDigit: string;\n  second: number;\n  secondTwoDigit: string;\n  timeZoneName: string;\n  timeZoneNameShort: string;\n  year: number;\n  yearTwoDi: string;\n}\n```\n\n### Returned Time Parameters\n\nThis table lists the format you can specify in your Mustache template:\n\n| Format            | Meaning                                                       |\n| ----------------- | ------------------------------------------------------------- |\n| day               | 1, 2, ...12, 13, etc.                                         |\n| dayName           | string,                                                       |\n| dayNameShort      | string,                                                       |\n| dayPeriod         | string,                                                       |\n| dayTwoDigit       | 01, 02, 03, ..., 12, 13, etc.                                 |\n| hour              | 0, 1, 2, 3, ..., 12, 13, ..., 22, 23                          |\n| hour12            | 1, 2, 3, ..., 12, 1, 2, ..., 11, 12                           |\n| hour12TwoDigit    | 01, 02, ..., 12, 01, 02, ..., 11, 12                          |\n| hourTwoDigit      | 00, 01, 02, ..., 12, 13, ..., 22, 23                          |\n| iso               | A standard ISO8601 date string e.g. 2019-01-23T15:31:21.213Z, |\n| localeString      | A string with a language sensitive representation.            |\n| minute            | 0, 1, 2, ..., 58, 59                                          |\n| minuteTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| month             | 1, 2, 3, ..., 12                                              |\n| monthName         | Internationalized month name string.                          |\n| monthNameShort    | Internationalized abbreviated month name string.,             |\n| monthTwoDigit     | 01, 02, ..., 11, 12                                           |\n| second            | 0, 1, 2, ..., 58, 59                                          |\n| secondTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| timeZoneName      | Internationalized timezone, like `Pacific Daylight Time`      |\n| timeZoneNameShort | Internationalized timezone, abbreviated, like `PST`           |\n| year              | 0, 1, 2, ..., 1999, 2000, 2001, etc.                          |\n| yearTwoDigit      | 00, 01, 02, ..., 17, 18, 19, ..., 98, 99                      |\n","readmeFilename":"README.md","gitHead":"a1f66509b5a6104dc33409f285dac1ab133942f6","bugs":{"url":"https://github.com/ampproject/amphtml/issues"},"_id":"@bentoproject/date-display@1.2210251605.0","_nodeVersion":"16.17.1","_npmVersion":"8.15.0","dist":{"integrity":"sha512-H0Nhmn+ctZfoFSDtNPXPGh7j6cPdbXjobJAkaNJorZvBzPtNCg8fpIFFZuS3J/p0KrU2n3Jhv9jGiidGaPPGbA==","shasum":"a64e0333bf7354102b720ab33183ad8ce0252c26","tarball":"https://registry.npmjs.org/@bentoproject/date-display/-/date-display-1.2210251605.0.tgz","fileCount":29,"unpackedSize":677013,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDLphDzThcQQrUI7FzkjYmugH2ep0l+acI2rSHJuW0vZgIhANqIl1EP2oHIeEwPUb5uLIum1LtSvY+1PQUHu6ENoF+7"}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjWO9nACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrG0g//cY43bcthUhZ3v2EtNloEYOHPZudxkoztKpr9wyPDBEsCJzbV\r\n0Gtj6hWiLzAMGg5EF5Nms7Bxl5Cn62ZClJCEPznRMtn0s7qzFY5Tkco7lqoS\r\nkxaFK1rYxt+BHqEKmCavnvCTOsXqK0KEw3YooHdhnNz8EDrSneCmOj0pIq+E\r\nj1vj5zXphPV6KQ3xjUgO1JQcX5lD7FKL+1gk87LCZW/WSvgGexBIMJ1Rcie3\r\nAEyBJyBTh7GxHtOJPAnu7tuXCZalEb6WAWTCuoQX5d3GuxIDvd9lfPP5ZxHE\r\nRIsmA1Y0ykW98kJMS+QzCaLK8+zL9OQtecozEW57pWEM+AaU6qLpjR2++97F\r\nGbjpJQ/vJJRsLvRsuxctupGhPjDnZoqjdmeySx40QatIINWwqUA5eX6eZ/7r\r\nNPLM40lKc8IsdcmTdR7GeWoys47sg/1r3iJ1+OF7y8BOQwNo6Ln+qfF4wxsA\r\ndLndA/lEximW9Vhq3C5JSxkICRdQntukjEvt7Y8gl+oPHCNNmQ1uSIw/sX9y\r\nSp6ldu+FjnELetbq1vkVLPgZDF8Ce0Mt5bquxBZvL+4YXZ+6xGQlQi9EApm+\r\n1xG7QySEUVhfuaIFmvQPOL5zpqO5Vqtm4oTF1Hj7Ycxft21trYyiATv3RAGA\r\nIaY3UXkm0tJ107c+a0fUD3SkIQ+IwcETcBo=\r\n=tF/O\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"bentoprojectbot","email":"bentobot@amp.dev"},"directories":{},"maintainers":[{"name":"bentoprojectbot","email":"bentobot@amp.dev"},{"name":"kristoferbaxter","email":"kbax@me.com"},{"name":"esth","email":"esther@amp.dev"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/date-display_1.2210251605.0_1666772838915_0.9981543177731718"},"_hasShrinkwrap":false},"1.2210272257.0":{"name":"@bentoproject/date-display","version":"1.2210272257.0","description":"Displays time data that you can render in your page.","author":{"name":"Bento Authors"},"license":"Apache-2.0","main":"./dist/web-component.js","module":"./dist/web-component.module.js","exports":{".":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./web-component":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./preact":{"import":"./dist/component-preact.module.js","require":"./dist/component-preact.js"},"./react":{"import":"./dist/component-react.module.js","require":"./dist/component-react.js"},"./web-component.css":"./dist/web-component.css"},"repository":{"type":"git","url":"git+https://github.com/ampproject/amphtml.git","directory":"extensions/amp-date-display/1.0"},"homepage":"https://github.com/ampproject/amphtml/tree/main/extensions/amp-date-display/1.0","peerDependencies":{"preact":"^10.2.1","react":"^17.0.0"},"dependencies":{"@bentoproject/core":"0.2210272257.0"},"gitHead":"9664ef260a4ec8fcc997a65025bb11a20fea937c","bugs":{"url":"https://github.com/ampproject/amphtml/issues"},"_id":"@bentoproject/date-display@1.2210272257.0","_nodeVersion":"18.12.0","_npmVersion":"8.19.2","dist":{"integrity":"sha512-YdCnbI6UAKBF/1NCP/U3vePoorfTYPLseCM0JJ2S6d8scVwCnCat70Z3ZW+3JtvNiiaha7xxO4UugRCIsSy8lA==","shasum":"bf35bb5a27945909c9fdfff6128db7d09083185b","tarball":"https://registry.npmjs.org/@bentoproject/date-display/-/date-display-1.2210272257.0.tgz","fileCount":29,"unpackedSize":677013,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIDFQkGArL7j/IJZiPzlzDXEr0qzpPCjCAhfpCWuf4ui1AiAhrHU7P+72VRb/FCIa26Ej0EIzIfkfMIhm7XSNRjNuEQ=="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjW5INACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmq1nA//R2XCyJY2LkKWoepQ7ZHwL2+22QMfyvsnPSco0S9Sqo1lg+Te\r\nAcyf0d/UPotvheP6HwWLHaRUO+S9N3BTypbnzcj8VMOfoJnQ6z6avtr2cV8I\r\ndjoJgAwyB1EWGge+FRlhSGK5nLaRMSDEoO20WSR0ASjR4SmonCyXmWSQsOgf\r\ngTKm4jK++vAQOMDaM0lVaatUowRpgsMRMuaPEjOgayPIvB1ptJ5Iw+N4tz4k\r\nC0yHV7XG2jNaVXZRm4XRhccdSPJfEpCy9no+r5Cfg3wHRAPSBoTFCKhjYL++\r\nreqTGcNxbZQxEjqgxBQNP4Dimsc/arYtnS/2GRvn1IRmCruhdwUueNEtk8ir\r\noUwGIjEr88oAUujOmZLwVThOyp3Fh4rQgL42ecwP+kQlEMaihfkSBNaGn/bp\r\n27xDdqZiCYllObVxlWFLbMvK8p6Qhm+M5YV0SCqGnXreUSd3e7rjQdd1xDnM\r\n1k6IJNXCLnDSBSGErQDWLVW2T4l6WEbZ8glguymuEdIbk/wBDyFbKMoptvrE\r\nmqGZqhLxPN2oK+84C+eDYiH3L2cZb39O453b30F/OcgIPCoqIvP5f2CrgO1m\r\nFo1Z97A2CqZc68sp9z47V21SxMuWnMSN2dYt6Guh2FGWZtgiiO8sBC6l89UO\r\n3e2CvKBKwPdBttNjzYGJ3PqYAQJXPLwFEMs=\r\n=hFGA\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"bentoprojectbot","email":"bentobot@amp.dev"},"directories":{},"maintainers":[{"name":"bentoprojectbot","email":"bentobot@amp.dev"},{"name":"kristoferbaxter","email":"kbax@me.com"},{"name":"esth","email":"esther@amp.dev"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/date-display_1.2210272257.0_1666945549588_0.959453987919735"},"_hasShrinkwrap":false},"1.2211042305.0":{"name":"@bentoproject/date-display","version":"1.2211042305.0","description":"Displays time data that you can render in your page.","author":{"name":"Bento Authors"},"license":"Apache-2.0","main":"./dist/web-component.js","module":"./dist/web-component.module.js","exports":{".":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./web-component":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./preact":{"import":"./dist/component-preact.module.js","require":"./dist/component-preact.js"},"./react":{"import":"./dist/component-react.module.js","require":"./dist/component-react.js"},"./web-component.css":"./dist/web-component.css"},"repository":{"type":"git","url":"git+https://github.com/ampproject/amphtml.git","directory":"extensions/amp-date-display/1.0"},"homepage":"https://github.com/ampproject/amphtml/tree/main/extensions/amp-date-display/1.0","peerDependencies":{"preact":"^10.2.1","react":"^17.0.0"},"dependencies":{"@bentoproject/core":"0.2211042305.0"},"gitHead":"592500a0e400703252086eb8ab7b1cd46d674ff2","bugs":{"url":"https://github.com/ampproject/amphtml/issues"},"_id":"@bentoproject/date-display@1.2211042305.0","_nodeVersion":"18.12.0","_npmVersion":"8.19.2","dist":{"integrity":"sha512-rueLo344bRupBo20zTruPkjbxVs9zZqpGR3eLnh2x7RY2lVDwlllxihWBlX9Kmr/oQ91Igm1M5l+gludu8urAw==","shasum":"4019d59397c1ab64784f05da080b225e4e8df6f1","tarball":"https://registry.npmjs.org/@bentoproject/date-display/-/date-display-1.2211042305.0.tgz","fileCount":29,"unpackedSize":677013,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCvw3tp5oaFLgbcRIYS3OM+P2ydySFF2mMwkXaWPLQgNQIhANj013k6sTMoknmOAE7pKrurddGfqhA/K+v4aejDEK7h"}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjZh2+ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrvMA/+NKg+7LZTjSyOxZnJ51MUomhXSGRiIB2rPYhx8HIktDrwMbxm\r\nvckwXd1xTxGbnHmUZIHKWVywQBZ03EFEwJ3Pr9ym3/6bcpnUVcvvV8XuVkrU\r\n94zM/3Xwmm6kX0vrtsC++uQBgS5Y+obzDum038FdGsk+UbyZgGnbStLdvwEl\r\nIqZcvhSVE4uDX/QMY8qJ3aKvxm1HaGMGO7j1VJ+00j5Yza1lbZSU+t5bMYkm\r\nSGfAUSANbh5H/XlZW5m4cijH1UT91twq+rv8nZdhhb7TXlBBJn+6XHtbDyTX\r\nTPjydLyf6CvwJxnl5peLiW32KjYTPB7IOfsJADYC2Lw0S2yh943UNdJxRqix\r\ncfEsxE9X6dSviGJCub1+9Z3nh1PPcXtGbvrQHj/rahvK5RxrTOVHxm868Qow\r\ny+c9r1Ys4r/6hnnF1lEx94dPPCvPDngcyQJCk/EYdAl9X+UhTsRx8bVpRm4q\r\n+eauVCqa1TfDyjZ4w32TKSLvus2r4fkYx2l1Hya6DeWGZMsa3i8OFcuZ6EVk\r\nvXop7c4njLAgm7K8EoBlWi3Gy1brYX7QLpUWm3HOcKLK3YGfpUmdd4dABh+U\r\n1AkTopvbns/lHg8THfzTVo8Y3zTnjtHNCzqF3+Lbg39nzn2XU2SqHDv2rPSc\r\nQuXcTPRmL64tQh36sG09a3KRQI7xBSj33cM=\r\n=MONL\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"bentoprojectbot","email":"bentobot@amp.dev"},"directories":{},"maintainers":[{"name":"bentoprojectbot","email":"bentobot@amp.dev"},{"name":"kristoferbaxter","email":"kbax@me.com"},{"name":"esth","email":"esther@amp.dev"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/date-display_1.2211042305.0_1667636670702_0.25601364038351604"},"_hasShrinkwrap":false},"1.2211060024.0":{"name":"@bentoproject/date-display","version":"1.2211060024.0","description":"Displays time data that you can render in your page.","author":{"name":"Bento Authors"},"license":"Apache-2.0","main":"./dist/web-component.js","module":"./dist/web-component.module.js","exports":{".":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./web-component":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./preact":{"import":"./dist/component-preact.module.js","require":"./dist/component-preact.js"},"./react":{"import":"./dist/component-react.module.js","require":"./dist/component-react.js"},"./web-component.css":"./dist/web-component.css"},"repository":{"type":"git","url":"git+https://github.com/ampproject/amphtml.git","directory":"extensions/amp-date-display/1.0"},"homepage":"https://github.com/ampproject/amphtml/tree/main/extensions/amp-date-display/1.0","peerDependencies":{"preact":"^10.2.1","react":"^17.0.0"},"dependencies":{"@bentoproject/core":"0.2211060024.0"},"readme":"# Bento Date Display\n\nDisplays time data that you can render in your page. By providing specific [attributes](#attributes) in the Bento Date Display tag, the Bento Date Display extension returns a list of time parameters, which you can pass to [an amp-mustache template](../../amp-mustache/amp-mustache.md) for rendering. Refer to the [list below for each returned time parameter](#returned-time-parameters).\n\n## Web Component\n\nYou must include each Bento component's required CSS library to guarantee proper loading and before adding custom styles. Or use the light-weight pre-upgrade styles available inline. See [Layout and style](#layout-and-style).\n\n### Example: Import via npm\n\nInstall via npm:\n\n```sh\nnpm install @bentoproject/bento-date-display\n```\n\n```javascript\nimport {defineElement as defineBentoDateDisplay} from '@bentoproject/bento-date-display';\ndefineBentoDateDisplay();\n```\n\n### Include via `<script>`\n\n```html\n<script type=\"module\" src=\"https://cdn.ampproject.org/bento.mjs\" crossorigin=\"anonymous\"></script>\n<script nomodule src=\"https://cdn.ampproject.org/bento.js\" crossorigin=\"anonymous\"></script>\n<!-- Include bento-mustache.js to use mustache templates with this component -->\n<script async src=\"https://cdn.ampproject.org/v0/bento-mustache.js\"></script>\n<script type=\"module\" src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.mjs\" crossorigin=\"anonymous\"></script>\n<script nomodule src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.js\" crossorigin=\"anonymous\"></script>\n<link rel=\"stylesheet\" href=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.css\" crossorigin=\"anonymous\">\n```\n\n### Example\n\n```html\n<!DOCTYPE html>\n<html>\n  <head>\n    <script\n      type=\"module\"\n      async\n      src=\"https://cdn.ampproject.org/bento.mjs\"\n    ></script>\n    <script nomodule src=\"https://cdn.ampproject.org/bento.js\"></script>\n    <script async src=\"https://cdn.ampproject.org/v0/bento-mustache.js\"></script>\n    <script\n      type=\"module\"\n      async\n      src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.mjs\"\n    ></script>\n    <script\n      nomodule\n      async\n      src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.js\"\n    ></script>\n    <link\n      rel=\"stylesheet\"\n      type=\"text/css\"\n      href=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.css\"\n    />\n  </head>\n  <body>\n    <bento-date-display\n      datetime=\"2021-09-09T16:02:08.494Z\"\n      displayIn=\"utc\"\n      locale=\"en-GB\"\n    >\n      <template>\n        <div>ISO: {{iso}}; locale: {{localeString}}</div>\n      </template>\n    </bento-date-display>\n  </body>\n</html>\n```\n\n### Interactivity and API usage\n\nThe Bento Date Display component does not have an imperative API. However, the Bento Date Display Web Component will render a mustache-template, provided by the consumer in a `<template>` tag with `type=\"amp-mustache\"`. This template may interpolate date-related parameters. See the [Returned Time Parameters section](#returned-time-parameters) for a full list of all the available parameters.\n\n### Layout and style\n\nEach Bento component has a small CSS library you must include to guarantee proper loading without [content shifts](https://web.dev/cls/). Because of order-based specificity, you must manually ensure that stylesheets are included before any custom styles.\n\n```html\n<link rel=\"stylesheet\" type=\"text/css\" href=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.css\">\n```\n\nAlternatively, you may also make the light-weight pre-upgrade styles available inline:\n\n```html\n<style data-bento-boilerplate>\n  bento-date-display {\n    display: block;\n    overflow: hidden;\n    position: relative;\n  }\n</style>\n```\n\n### Attributes\n\n#### `datetime`\n\nThe `datetime` attribute specifies the date and time in a standard ISO 8601 date\nstring (e.g. 2017-08-02T15:05:05.000Z) or the string `now`. If set to `now`,\n`bento-date-display` will use the time the page loaded to render its template.\n\n#### `timestamp-ms`\n\nThe `timestamp-ms` attribute specifies the date and time using the number of\nmilliseconds since 1970-01-01T0:00:00.000Z\n\n#### `timestamp-seconds`\n\nThe `timestamp-seconds` attribute specifies the date and time using the number\nof seconds since 1970-01-01T0:00:00.000Z\n\n#### `locale` (optional)\n\nAn internationalization language string for each timer unit. The default value\nis `en` (for English). This attribute supports all values that are supported by\nthe user's browser.\n\n#### `display-in` (optional)\n\nIf set to the value `utc`, the `display-in` attribute will convert the given\ndate to UTC.\n\n#### `offset-seconds` (optional)\n\nThe `offset-seconds` attribute specifies an integer number of seconds to shift\nthe given date.\n\n#### `data-options-\\*` (optional)\n\nThe `data-options-*` supports all the options under [Intl.DateTimeFormat.options](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/DateTimeFormat#parameters)\nparameter that specifies the formatting style to use for `localeString` format.\nValid attributes include: `data-options-date-style`, `data-options-time-style`, etc.\n\nNote that if `display-in` attrubute is set to `utc`, the value of\n`data-options-time-zone` will automatically be converted to `UTC`.\n\n### Styling\n\nYou may use the `bento-date-display` element selector to style the Bento Date Display component freely.\n\n---\n\n## Preact/React Component\n\n### Import via npm\n\n```sh\nnpm install @bentoproject/date-display\n```\n\n```javascript\nimport React from 'react';\nimport {BentoDateDisplay} from '@bentoproject/date-display/react';\nimport '@bentoproject/date-display/styles.css';\n\nfunction App() {\n  return (\n    <BentoDateDisplay\n      datetime={dateTime}\n      displayIn={displayIn}\n      locale={locale}\n      render={(date) => (\n        <div>{`ISO: ${date.iso}; locale: ${date.localeString}`}</div>\n      )}\n    />\n  );\n}\n```\n\n### Interactivity and API usage\n\nThe Bento Date Display component does not have an imperative API. However, the Bento Date Display Preact/React component does accept a `render` prop that renders the consumer's template. This `render` prop should be a function which the Bento Date Display Preact/React component can use to render its template. The `render` callback will be provided a variety of date-related parameters for consumers to interpolate in the rendered template. See the [`render` prop section](#render) for more information.\n\n### Layout and style\n\nThe Bento Date Display Preact/React component allows consumers to render their own templates. These templates may use inline styles, `<style>` tags, Preact/React components that import their own stylesheets.\n\n### Props\n\n#### `datetime`\n\nRequired prop. Denotes the date and time as a Date, String, or Number. If String, must be a standard ISO 8601 date string (e.g. 2017-08-02T15:05:05.000Z) or the string `now`. If set to `now`, it will use the time the page loaded to render its template. If Number, must be a POSIX epoch value in milliseconds.\n\n#### `displayIn`\n\nOptional prop that can be either `\"utc\"` or `\"local\"` and defaults to `\"local\"`. This prop indicates what timezone to display the date in. If set to the value `\"utc\"`, the component will convert the given date to UTC.\n\n#### `locale`\n\nAn internationalization language string for each timer unit. The default value is `en` (for English). This prop supports all values that are supported by the user's browser.\n\n#### `localeOptions`\n\nThe `localeOptions` object supports all the options under [Intl.DateTimeFormat.options](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/DateTimeFormat#parameters) parameter that specifies the formatting style to use for `localeString` format.\n\nNote that if the `displayIn` prop is set to `utc`, the value of `localeOptions.timeZone` will automatically be converted to `UTC`.\n\n#### `render`\n\nOptional callback that should render a template. The callback will be provided an object with properties/values related to the date expressed in `datetime`.\n\nBy default, the Bento Date Display component will display the [`localeString` form of the Date](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/toLocaleString) for the given locale and localeOption. See the [Returned Time Parameters section](#returned-time-parameters) for more details on how each property will be displayed.\n\n```typescript\n(dateParams: DateParams) => JSXInternal.Element\ninterface DateParams {\n  day: number;\n  dayName: string;\n  dayNameShort: string;\n  dayPeriod: string;\n  dayTwoDigit: string;\n  hour: number;\n  hour12: number;\n  hour12TwoDigit: string;\n  hourTwoDigit: string;\n  iso: string;\n  localeString: string;\n  minute: number;\n  minuteTwoDigit: string;\n  month: number;\n  monthName: string;\n  monthNameShort: string;\n  monthTwoDigit: string;\n  second: number;\n  secondTwoDigit: string;\n  timeZoneName: string;\n  timeZoneNameShort: string;\n  year: number;\n  yearTwoDi: string;\n}\n```\n\n### Returned Time Parameters\n\nThis table lists the format you can specify in your Mustache template:\n\n| Format            | Meaning                                                       |\n| ----------------- | ------------------------------------------------------------- |\n| day               | 1, 2, ...12, 13, etc.                                         |\n| dayName           | string,                                                       |\n| dayNameShort      | string,                                                       |\n| dayPeriod         | string,                                                       |\n| dayTwoDigit       | 01, 02, 03, ..., 12, 13, etc.                                 |\n| hour              | 0, 1, 2, 3, ..., 12, 13, ..., 22, 23                          |\n| hour12            | 1, 2, 3, ..., 12, 1, 2, ..., 11, 12                           |\n| hour12TwoDigit    | 01, 02, ..., 12, 01, 02, ..., 11, 12                          |\n| hourTwoDigit      | 00, 01, 02, ..., 12, 13, ..., 22, 23                          |\n| iso               | A standard ISO8601 date string e.g. 2019-01-23T15:31:21.213Z, |\n| localeString      | A string with a language sensitive representation.            |\n| minute            | 0, 1, 2, ..., 58, 59                                          |\n| minuteTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| month             | 1, 2, 3, ..., 12                                              |\n| monthName         | Internationalized month name string.                          |\n| monthNameShort    | Internationalized abbreviated month name string.,             |\n| monthTwoDigit     | 01, 02, ..., 11, 12                                           |\n| second            | 0, 1, 2, ..., 58, 59                                          |\n| secondTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| timeZoneName      | Internationalized timezone, like `Pacific Daylight Time`      |\n| timeZoneNameShort | Internationalized timezone, abbreviated, like `PST`           |\n| year              | 0, 1, 2, ..., 1999, 2000, 2001, etc.                          |\n| yearTwoDigit      | 00, 01, 02, ..., 17, 18, 19, ..., 98, 99                      |\n","readmeFilename":"README.md","gitHead":"f6dce0a3fbdbc90de3eb1773dbfc31ff1e476460","bugs":{"url":"https://github.com/ampproject/amphtml/issues"},"_id":"@bentoproject/date-display@1.2211060024.0","_nodeVersion":"18.12.0","_npmVersion":"8.19.2","dist":{"integrity":"sha512-ZSUp51qz5jv0M3uDXwbob4fMhhfHeJEn0bsO0hAPVdyLnczfosuIkImvY7Rbc++81IM68Q7gNPIJdNNWe+HItw==","shasum":"35fcb99361a6ffb5eeec313f830b960b3d3c5ff2","tarball":"https://registry.npmjs.org/@bentoproject/date-display/-/date-display-1.2211060024.0.tgz","fileCount":29,"unpackedSize":677013,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIF3miOp1I8R9rcPyLSBcgBpK/8vXL8ooO7+OlkJ4D+C3AiAf3soRTWsb16R6N+6/kmFpU/atXKWKmgVKJkCUaGkdeg=="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjahJtACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrLyQ//YLTDAwWUXwJ6NeyjPgJlkiLMYVV5sPGhpR1jQUhRhmFoc0ly\r\njJW75q7FfEwNnvWz97N0kkDeDpb03Erzm+yJ7JV1imiv4QTnjSlorYi1kxJY\r\nI6a2LMEuPmtmhpn0hN/g9dzm6inFEKDDZclLZXSF/LWrWLZWIaookqJmm7/W\r\n/sdoRFy6uREKS7yxiwTcqKPDIavtUOi+PM+Rh5zYzmbeTRqt6NZ4zDqmBXZZ\r\nrdwwAyTl8nQEHki58175K2gtXNrM6mDUMD2Z9idv3w+JfHP8JbM09v/ZV8yD\r\n3ay+fwB8AenLKptxCZ72DhgXGtEtFYCg3dLWKBEYO7HZMqPkFUr2oJn0GYLJ\r\nQp4s63WRylZgdAc4wV+F8BoFQWv/9XybTTffLp96ZXJ/EuAfT6jV7bBqSIat\r\nP+t2d+xJF7CQfMqiA9H88SwxQhypb5YvaCUItj/omaaERQXeT6qbOoNdJtLh\r\n7aPTsxDdLMO+jDU48bwYCM1ba9QSHe3TCs0yBLvfJ2hkEKAPXHoEKd4lvvdu\r\nogm8/3OB4f+u4TOo84xU1d3YpQFY9lTxhlmh2Q7AF4cv9UchSWc/SHT3KGGc\r\nZmZwAlrG5RkdhmJlTmXfT0kcEMz0e0+OI6pH1kmMsPEpGIiPaba4AW+wJMnc\r\nZqenJcZb2paK2c3fukAiCy2g3bQk9ebslT0=\r\n=yxm4\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"bentoprojectbot","email":"bentobot@amp.dev"},"directories":{},"maintainers":[{"name":"bentoprojectbot","email":"bentobot@amp.dev"},{"name":"kristoferbaxter","email":"kbax@me.com"},{"name":"esth","email":"esther@amp.dev"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/date-display_1.2211060024.0_1667895917705_0.9090932833895917"},"_hasShrinkwrap":false},"1.2211111611.0":{"name":"@bentoproject/date-display","version":"1.2211111611.0","description":"Displays time data that you can render in your page.","author":{"name":"Bento Authors"},"license":"Apache-2.0","main":"./dist/web-component.js","module":"./dist/web-component.module.js","exports":{".":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./web-component":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./preact":{"import":"./dist/component-preact.module.js","require":"./dist/component-preact.js"},"./react":{"import":"./dist/component-react.module.js","require":"./dist/component-react.js"},"./web-component.css":"./dist/web-component.css"},"repository":{"type":"git","url":"git+https://github.com/ampproject/amphtml.git","directory":"extensions/amp-date-display/1.0"},"homepage":"https://github.com/ampproject/amphtml/tree/main/extensions/amp-date-display/1.0","peerDependencies":{"preact":"^10.2.1","react":"^17.0.0"},"dependencies":{"@bentoproject/core":"0.2211111611.0"},"readme":"# Bento Date Display\n\nDisplays time data that you can render in your page. By providing specific [attributes](#attributes) in the Bento Date Display tag, the Bento Date Display extension returns a list of time parameters, which you can pass to [an amp-mustache template](../../amp-mustache/amp-mustache.md) for rendering. Refer to the [list below for each returned time parameter](#returned-time-parameters).\n\n## Web Component\n\nYou must include each Bento component's required CSS library to guarantee proper loading and before adding custom styles. Or use the light-weight pre-upgrade styles available inline. See [Layout and style](#layout-and-style).\n\n### Example: Import via npm\n\nInstall via npm:\n\n```sh\nnpm install @bentoproject/bento-date-display\n```\n\n```javascript\nimport {defineElement as defineBentoDateDisplay} from '@bentoproject/bento-date-display';\ndefineBentoDateDisplay();\n```\n\n### Include via `<script>`\n\n```html\n<script type=\"module\" src=\"https://cdn.ampproject.org/bento.mjs\" crossorigin=\"anonymous\"></script>\n<script nomodule src=\"https://cdn.ampproject.org/bento.js\" crossorigin=\"anonymous\"></script>\n<!-- Include bento-mustache.js to use mustache templates with this component -->\n<script async src=\"https://cdn.ampproject.org/v0/bento-mustache.js\"></script>\n<script type=\"module\" src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.mjs\" crossorigin=\"anonymous\"></script>\n<script nomodule src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.js\" crossorigin=\"anonymous\"></script>\n<link rel=\"stylesheet\" href=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.css\" crossorigin=\"anonymous\">\n```\n\n### Example\n\n```html\n<!DOCTYPE html>\n<html>\n  <head>\n    <script\n      type=\"module\"\n      async\n      src=\"https://cdn.ampproject.org/bento.mjs\"\n    ></script>\n    <script nomodule src=\"https://cdn.ampproject.org/bento.js\"></script>\n    <script async src=\"https://cdn.ampproject.org/v0/bento-mustache.js\"></script>\n    <script\n      type=\"module\"\n      async\n      src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.mjs\"\n    ></script>\n    <script\n      nomodule\n      async\n      src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.js\"\n    ></script>\n    <link\n      rel=\"stylesheet\"\n      type=\"text/css\"\n      href=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.css\"\n    />\n  </head>\n  <body>\n    <bento-date-display\n      datetime=\"2021-09-09T16:02:08.494Z\"\n      displayIn=\"utc\"\n      locale=\"en-GB\"\n    >\n      <template>\n        <div>ISO: {{iso}}; locale: {{localeString}}</div>\n      </template>\n    </bento-date-display>\n  </body>\n</html>\n```\n\n### Interactivity and API usage\n\nThe Bento Date Display component does not have an imperative API. However, the Bento Date Display Web Component will render a mustache-template, provided by the consumer in a `<template>` tag with `type=\"amp-mustache\"`. This template may interpolate date-related parameters. See the [Returned Time Parameters section](#returned-time-parameters) for a full list of all the available parameters.\n\n### Layout and style\n\nEach Bento component has a small CSS library you must include to guarantee proper loading without [content shifts](https://web.dev/cls/). Because of order-based specificity, you must manually ensure that stylesheets are included before any custom styles.\n\n```html\n<link rel=\"stylesheet\" type=\"text/css\" href=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.css\">\n```\n\nAlternatively, you may also make the light-weight pre-upgrade styles available inline:\n\n```html\n<style data-bento-boilerplate>\n  bento-date-display {\n    display: block;\n    overflow: hidden;\n    position: relative;\n  }\n</style>\n```\n\n### Attributes\n\n#### `datetime`\n\nThe `datetime` attribute specifies the date and time in a standard ISO 8601 date\nstring (e.g. 2017-08-02T15:05:05.000Z) or the string `now`. If set to `now`,\n`bento-date-display` will use the time the page loaded to render its template.\n\n#### `timestamp-ms`\n\nThe `timestamp-ms` attribute specifies the date and time using the number of\nmilliseconds since 1970-01-01T0:00:00.000Z\n\n#### `timestamp-seconds`\n\nThe `timestamp-seconds` attribute specifies the date and time using the number\nof seconds since 1970-01-01T0:00:00.000Z\n\n#### `locale` (optional)\n\nAn internationalization language string for each timer unit. The default value\nis `en` (for English). This attribute supports all values that are supported by\nthe user's browser.\n\n#### `display-in` (optional)\n\nIf set to the value `utc`, the `display-in` attribute will convert the given\ndate to UTC.\n\n#### `offset-seconds` (optional)\n\nThe `offset-seconds` attribute specifies an integer number of seconds to shift\nthe given date.\n\n#### `data-options-\\*` (optional)\n\nThe `data-options-*` supports all the options under [Intl.DateTimeFormat.options](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/DateTimeFormat#parameters)\nparameter that specifies the formatting style to use for `localeString` format.\nValid attributes include: `data-options-date-style`, `data-options-time-style`, etc.\n\nNote that if `display-in` attrubute is set to `utc`, the value of\n`data-options-time-zone` will automatically be converted to `UTC`.\n\n### Styling\n\nYou may use the `bento-date-display` element selector to style the Bento Date Display component freely.\n\n---\n\n## Preact/React Component\n\n### Import via npm\n\n```sh\nnpm install @bentoproject/date-display\n```\n\n```javascript\nimport React from 'react';\nimport {BentoDateDisplay} from '@bentoproject/date-display/react';\nimport '@bentoproject/date-display/styles.css';\n\nfunction App() {\n  return (\n    <BentoDateDisplay\n      datetime={dateTime}\n      displayIn={displayIn}\n      locale={locale}\n      render={(date) => (\n        <div>{`ISO: ${date.iso}; locale: ${date.localeString}`}</div>\n      )}\n    />\n  );\n}\n```\n\n### Interactivity and API usage\n\nThe Bento Date Display component does not have an imperative API. However, the Bento Date Display Preact/React component does accept a `render` prop that renders the consumer's template. This `render` prop should be a function which the Bento Date Display Preact/React component can use to render its template. The `render` callback will be provided a variety of date-related parameters for consumers to interpolate in the rendered template. See the [`render` prop section](#render) for more information.\n\n### Layout and style\n\nThe Bento Date Display Preact/React component allows consumers to render their own templates. These templates may use inline styles, `<style>` tags, Preact/React components that import their own stylesheets.\n\n### Props\n\n#### `datetime`\n\nRequired prop. Denotes the date and time as a Date, String, or Number. If String, must be a standard ISO 8601 date string (e.g. 2017-08-02T15:05:05.000Z) or the string `now`. If set to `now`, it will use the time the page loaded to render its template. If Number, must be a POSIX epoch value in milliseconds.\n\n#### `displayIn`\n\nOptional prop that can be either `\"utc\"` or `\"local\"` and defaults to `\"local\"`. This prop indicates what timezone to display the date in. If set to the value `\"utc\"`, the component will convert the given date to UTC.\n\n#### `locale`\n\nAn internationalization language string for each timer unit. The default value is `en` (for English). This prop supports all values that are supported by the user's browser.\n\n#### `localeOptions`\n\nThe `localeOptions` object supports all the options under [Intl.DateTimeFormat.options](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/DateTimeFormat#parameters) parameter that specifies the formatting style to use for `localeString` format.\n\nNote that if the `displayIn` prop is set to `utc`, the value of `localeOptions.timeZone` will automatically be converted to `UTC`.\n\n#### `render`\n\nOptional callback that should render a template. The callback will be provided an object with properties/values related to the date expressed in `datetime`.\n\nBy default, the Bento Date Display component will display the [`localeString` form of the Date](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/toLocaleString) for the given locale and localeOption. See the [Returned Time Parameters section](#returned-time-parameters) for more details on how each property will be displayed.\n\n```typescript\n(dateParams: DateParams) => JSXInternal.Element\ninterface DateParams {\n  day: number;\n  dayName: string;\n  dayNameShort: string;\n  dayPeriod: string;\n  dayTwoDigit: string;\n  hour: number;\n  hour12: number;\n  hour12TwoDigit: string;\n  hourTwoDigit: string;\n  iso: string;\n  localeString: string;\n  minute: number;\n  minuteTwoDigit: string;\n  month: number;\n  monthName: string;\n  monthNameShort: string;\n  monthTwoDigit: string;\n  second: number;\n  secondTwoDigit: string;\n  timeZoneName: string;\n  timeZoneNameShort: string;\n  year: number;\n  yearTwoDi: string;\n}\n```\n\n### Returned Time Parameters\n\nThis table lists the format you can specify in your Mustache template:\n\n| Format            | Meaning                                                       |\n| ----------------- | ------------------------------------------------------------- |\n| day               | 1, 2, ...12, 13, etc.                                         |\n| dayName           | string,                                                       |\n| dayNameShort      | string,                                                       |\n| dayPeriod         | string,                                                       |\n| dayTwoDigit       | 01, 02, 03, ..., 12, 13, etc.                                 |\n| hour              | 0, 1, 2, 3, ..., 12, 13, ..., 22, 23                          |\n| hour12            | 1, 2, 3, ..., 12, 1, 2, ..., 11, 12                           |\n| hour12TwoDigit    | 01, 02, ..., 12, 01, 02, ..., 11, 12                          |\n| hourTwoDigit      | 00, 01, 02, ..., 12, 13, ..., 22, 23                          |\n| iso               | A standard ISO8601 date string e.g. 2019-01-23T15:31:21.213Z, |\n| localeString      | A string with a language sensitive representation.            |\n| minute            | 0, 1, 2, ..., 58, 59                                          |\n| minuteTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| month             | 1, 2, 3, ..., 12                                              |\n| monthName         | Internationalized month name string.                          |\n| monthNameShort    | Internationalized abbreviated month name string.,             |\n| monthTwoDigit     | 01, 02, ..., 11, 12                                           |\n| second            | 0, 1, 2, ..., 58, 59                                          |\n| secondTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| timeZoneName      | Internationalized timezone, like `Pacific Daylight Time`      |\n| timeZoneNameShort | Internationalized timezone, abbreviated, like `PST`           |\n| year              | 0, 1, 2, ..., 1999, 2000, 2001, etc.                          |\n| yearTwoDigit      | 00, 01, 02, ..., 17, 18, 19, ..., 98, 99                      |\n","readmeFilename":"README.md","gitHead":"f9c1138144838b5c4612a779bf407d2b2413d105","bugs":{"url":"https://github.com/ampproject/amphtml/issues"},"_id":"@bentoproject/date-display@1.2211111611.0","_nodeVersion":"18.12.0","_npmVersion":"8.19.2","dist":{"integrity":"sha512-XpEnl8vs17iYaYEJ7HivvD91466BaTmwr9IceEClV13JM6Nf25WrqbtcgH5Dh4MulR+3qHwpbX+p2XAbVWcxoQ==","shasum":"6e27bc1803c8f96adeab43f19cc0f69ca236241f","tarball":"https://registry.npmjs.org/@bentoproject/date-display/-/date-display-1.2211111611.0.tgz","fileCount":29,"unpackedSize":677013,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIAcVl0Hqq/m3Htjj90xIaUkPvyXtxVCxNAcN2rhhH9P5AiEAmX4HhFAMhVaQlt6t18Ot029dX24VlFBnsgFLUxqFWAM="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjb1gXACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmp8Bw/+LT64GZoNKtA9FPEZZU/dYcdIEHMiHvnFpgHkTkMzOcIZkbVT\r\nsJvU8+slUJr6TQz+fWPXGIRE/2svfIWoVb1IxB4LG41xA+sUJzWo5eb8CJq1\r\n1pkKfO30Lm4B3wsFDnAWE3uYooDFPYhkjWAPtukTFyyOGr+iBO11W048rIcP\r\nkMNsf15KDiq2aaSXMa5cFgYNOow1uP2HAXXTv/8FnbzhqEvIJg8uqN0O+We2\r\ndAwuWsLnrt9Um3M2YM64795BBB4TBIGrF4XHTPWN85ILdJZ9g69k2+3Icu7Y\r\nlXbGsKVYxLpGJ21oRIy3qtjDnrUmlbm207XbmMpH105M5dsVQoUw1nXDMwvZ\r\n9rs5PnvU+uYql92qSTiIn+mX2TPaKq/DrjB6ern/RAuXzsquOfCEvAqSLKmv\r\n3hxqhfY4Mb+n6C0pIy2uYmpYD1kI+QTzUymRTQn4POJHIox/T5Tstvy6eZuH\r\nMgB7cNCMheGXhWUJHgbUqCz2JBg8pCXAEyq69xY8tYJJLEv1O3ocqPLVfxyj\r\n5FoM0T/tCEDrltHm6thrxrPWXOtusf2OQISkDhOmcOBzw1mC9jjCvQ3V44oF\r\nqOS17AVW4rCOA37GjUfJqGy+yLop8CzpehS+NjwlqNi+KZmT1wRElrh6iR+2\r\ncjmRzk9m7DK1qU7B506otpij7D+nMriGFiE=\r\n=ANNb\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"bentoprojectbot","email":"bentobot@amp.dev"},"directories":{},"maintainers":[{"name":"bentoprojectbot","email":"bentobot@amp.dev"},{"name":"kristoferbaxter","email":"kbax@me.com"},{"name":"esth","email":"esther@amp.dev"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/date-display_1.2211111611.0_1668241431064_0.5180472161134408"},"_hasShrinkwrap":false},"1.2211151402.0":{"name":"@bentoproject/date-display","version":"1.2211151402.0","description":"Displays time data that you can render in your page.","author":{"name":"Bento Authors"},"license":"Apache-2.0","main":"./dist/web-component.js","module":"./dist/web-component.module.js","exports":{".":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./web-component":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./preact":{"import":"./dist/component-preact.module.js","require":"./dist/component-preact.js"},"./react":{"import":"./dist/component-react.module.js","require":"./dist/component-react.js"},"./web-component.css":"./dist/web-component.css"},"repository":{"type":"git","url":"git+https://github.com/ampproject/amphtml.git","directory":"extensions/amp-date-display/1.0"},"homepage":"https://github.com/ampproject/amphtml/tree/main/extensions/amp-date-display/1.0","peerDependencies":{"preact":"^10.2.1","react":"^17.0.0"},"dependencies":{"@bentoproject/core":"0.2211151402.0"},"readme":"# Bento Date Display\n\nDisplays time data that you can render in your page. By providing specific [attributes](#attributes) in the Bento Date Display tag, the Bento Date Display extension returns a list of time parameters, which you can pass to [an amp-mustache template](../../amp-mustache/amp-mustache.md) for rendering. Refer to the [list below for each returned time parameter](#returned-time-parameters).\n\n## Web Component\n\nYou must include each Bento component's required CSS library to guarantee proper loading and before adding custom styles. Or use the light-weight pre-upgrade styles available inline. See [Layout and style](#layout-and-style).\n\n### Example: Import via npm\n\nInstall via npm:\n\n```sh\nnpm install @bentoproject/bento-date-display\n```\n\n```javascript\nimport {defineElement as defineBentoDateDisplay} from '@bentoproject/bento-date-display';\ndefineBentoDateDisplay();\n```\n\n### Include via `<script>`\n\n```html\n<script type=\"module\" src=\"https://cdn.ampproject.org/bento.mjs\" crossorigin=\"anonymous\"></script>\n<script nomodule src=\"https://cdn.ampproject.org/bento.js\" crossorigin=\"anonymous\"></script>\n<!-- Include bento-mustache.js to use mustache templates with this component -->\n<script async src=\"https://cdn.ampproject.org/v0/bento-mustache.js\"></script>\n<script type=\"module\" src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.mjs\" crossorigin=\"anonymous\"></script>\n<script nomodule src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.js\" crossorigin=\"anonymous\"></script>\n<link rel=\"stylesheet\" href=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.css\" crossorigin=\"anonymous\">\n```\n\n### Example\n\n```html\n<!DOCTYPE html>\n<html>\n  <head>\n    <script\n      type=\"module\"\n      async\n      src=\"https://cdn.ampproject.org/bento.mjs\"\n    ></script>\n    <script nomodule src=\"https://cdn.ampproject.org/bento.js\"></script>\n    <script async src=\"https://cdn.ampproject.org/v0/bento-mustache.js\"></script>\n    <script\n      type=\"module\"\n      async\n      src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.mjs\"\n    ></script>\n    <script\n      nomodule\n      async\n      src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.js\"\n    ></script>\n    <link\n      rel=\"stylesheet\"\n      type=\"text/css\"\n      href=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.css\"\n    />\n  </head>\n  <body>\n    <bento-date-display\n      datetime=\"2021-09-09T16:02:08.494Z\"\n      displayIn=\"utc\"\n      locale=\"en-GB\"\n    >\n      <template>\n        <div>ISO: {{iso}}; locale: {{localeString}}</div>\n      </template>\n    </bento-date-display>\n  </body>\n</html>\n```\n\n### Interactivity and API usage\n\nThe Bento Date Display component does not have an imperative API. However, the Bento Date Display Web Component will render a mustache-template, provided by the consumer in a `<template>` tag with `type=\"amp-mustache\"`. This template may interpolate date-related parameters. See the [Returned Time Parameters section](#returned-time-parameters) for a full list of all the available parameters.\n\n### Layout and style\n\nEach Bento component has a small CSS library you must include to guarantee proper loading without [content shifts](https://web.dev/cls/). Because of order-based specificity, you must manually ensure that stylesheets are included before any custom styles.\n\n```html\n<link rel=\"stylesheet\" type=\"text/css\" href=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.css\">\n```\n\nAlternatively, you may also make the light-weight pre-upgrade styles available inline:\n\n```html\n<style data-bento-boilerplate>\n  bento-date-display {\n    display: block;\n    overflow: hidden;\n    position: relative;\n  }\n</style>\n```\n\n### Attributes\n\n#### `datetime`\n\nThe `datetime` attribute specifies the date and time in a standard ISO 8601 date\nstring (e.g. 2017-08-02T15:05:05.000Z) or the string `now`. If set to `now`,\n`bento-date-display` will use the time the page loaded to render its template.\n\n#### `timestamp-ms`\n\nThe `timestamp-ms` attribute specifies the date and time using the number of\nmilliseconds since 1970-01-01T0:00:00.000Z\n\n#### `timestamp-seconds`\n\nThe `timestamp-seconds` attribute specifies the date and time using the number\nof seconds since 1970-01-01T0:00:00.000Z\n\n#### `locale` (optional)\n\nAn internationalization language string for each timer unit. The default value\nis `en` (for English). This attribute supports all values that are supported by\nthe user's browser.\n\n#### `display-in` (optional)\n\nIf set to the value `utc`, the `display-in` attribute will convert the given\ndate to UTC.\n\n#### `offset-seconds` (optional)\n\nThe `offset-seconds` attribute specifies an integer number of seconds to shift\nthe given date.\n\n#### `data-options-\\*` (optional)\n\nThe `data-options-*` supports all the options under [Intl.DateTimeFormat.options](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/DateTimeFormat#parameters)\nparameter that specifies the formatting style to use for `localeString` format.\nValid attributes include: `data-options-date-style`, `data-options-time-style`, etc.\n\nNote that if `display-in` attrubute is set to `utc`, the value of\n`data-options-time-zone` will automatically be converted to `UTC`.\n\n### Styling\n\nYou may use the `bento-date-display` element selector to style the Bento Date Display component freely.\n\n---\n\n## Preact/React Component\n\n### Import via npm\n\n```sh\nnpm install @bentoproject/date-display\n```\n\n```javascript\nimport React from 'react';\nimport {BentoDateDisplay} from '@bentoproject/date-display/react';\nimport '@bentoproject/date-display/styles.css';\n\nfunction App() {\n  return (\n    <BentoDateDisplay\n      datetime={dateTime}\n      displayIn={displayIn}\n      locale={locale}\n      render={(date) => (\n        <div>{`ISO: ${date.iso}; locale: ${date.localeString}`}</div>\n      )}\n    />\n  );\n}\n```\n\n### Interactivity and API usage\n\nThe Bento Date Display component does not have an imperative API. However, the Bento Date Display Preact/React component does accept a `render` prop that renders the consumer's template. This `render` prop should be a function which the Bento Date Display Preact/React component can use to render its template. The `render` callback will be provided a variety of date-related parameters for consumers to interpolate in the rendered template. See the [`render` prop section](#render) for more information.\n\n### Layout and style\n\nThe Bento Date Display Preact/React component allows consumers to render their own templates. These templates may use inline styles, `<style>` tags, Preact/React components that import their own stylesheets.\n\n### Props\n\n#### `datetime`\n\nRequired prop. Denotes the date and time as a Date, String, or Number. If String, must be a standard ISO 8601 date string (e.g. 2017-08-02T15:05:05.000Z) or the string `now`. If set to `now`, it will use the time the page loaded to render its template. If Number, must be a POSIX epoch value in milliseconds.\n\n#### `displayIn`\n\nOptional prop that can be either `\"utc\"` or `\"local\"` and defaults to `\"local\"`. This prop indicates what timezone to display the date in. If set to the value `\"utc\"`, the component will convert the given date to UTC.\n\n#### `locale`\n\nAn internationalization language string for each timer unit. The default value is `en` (for English). This prop supports all values that are supported by the user's browser.\n\n#### `localeOptions`\n\nThe `localeOptions` object supports all the options under [Intl.DateTimeFormat.options](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/DateTimeFormat#parameters) parameter that specifies the formatting style to use for `localeString` format.\n\nNote that if the `displayIn` prop is set to `utc`, the value of `localeOptions.timeZone` will automatically be converted to `UTC`.\n\n#### `render`\n\nOptional callback that should render a template. The callback will be provided an object with properties/values related to the date expressed in `datetime`.\n\nBy default, the Bento Date Display component will display the [`localeString` form of the Date](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/toLocaleString) for the given locale and localeOption. See the [Returned Time Parameters section](#returned-time-parameters) for more details on how each property will be displayed.\n\n```typescript\n(dateParams: DateParams) => JSXInternal.Element\ninterface DateParams {\n  day: number;\n  dayName: string;\n  dayNameShort: string;\n  dayPeriod: string;\n  dayTwoDigit: string;\n  hour: number;\n  hour12: number;\n  hour12TwoDigit: string;\n  hourTwoDigit: string;\n  iso: string;\n  localeString: string;\n  minute: number;\n  minuteTwoDigit: string;\n  month: number;\n  monthName: string;\n  monthNameShort: string;\n  monthTwoDigit: string;\n  second: number;\n  secondTwoDigit: string;\n  timeZoneName: string;\n  timeZoneNameShort: string;\n  year: number;\n  yearTwoDi: string;\n}\n```\n\n### Returned Time Parameters\n\nThis table lists the format you can specify in your Mustache template:\n\n| Format            | Meaning                                                       |\n| ----------------- | ------------------------------------------------------------- |\n| day               | 1, 2, ...12, 13, etc.                                         |\n| dayName           | string,                                                       |\n| dayNameShort      | string,                                                       |\n| dayPeriod         | string,                                                       |\n| dayTwoDigit       | 01, 02, 03, ..., 12, 13, etc.                                 |\n| hour              | 0, 1, 2, 3, ..., 12, 13, ..., 22, 23                          |\n| hour12            | 1, 2, 3, ..., 12, 1, 2, ..., 11, 12                           |\n| hour12TwoDigit    | 01, 02, ..., 12, 01, 02, ..., 11, 12                          |\n| hourTwoDigit      | 00, 01, 02, ..., 12, 13, ..., 22, 23                          |\n| iso               | A standard ISO8601 date string e.g. 2019-01-23T15:31:21.213Z, |\n| localeString      | A string with a language sensitive representation.            |\n| minute            | 0, 1, 2, ..., 58, 59                                          |\n| minuteTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| month             | 1, 2, 3, ..., 12                                              |\n| monthName         | Internationalized month name string.                          |\n| monthNameShort    | Internationalized abbreviated month name string.,             |\n| monthTwoDigit     | 01, 02, ..., 11, 12                                           |\n| second            | 0, 1, 2, ..., 58, 59                                          |\n| secondTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| timeZoneName      | Internationalized timezone, like `Pacific Daylight Time`      |\n| timeZoneNameShort | Internationalized timezone, abbreviated, like `PST`           |\n| year              | 0, 1, 2, ..., 1999, 2000, 2001, etc.                          |\n| yearTwoDigit      | 00, 01, 02, ..., 17, 18, 19, ..., 98, 99                      |\n","readmeFilename":"README.md","gitHead":"db41c24bd071b6322e0a5188c4bd74aa94cb9d5f","bugs":{"url":"https://github.com/ampproject/amphtml/issues"},"_id":"@bentoproject/date-display@1.2211151402.0","_nodeVersion":"18.12.0","_npmVersion":"8.19.2","dist":{"integrity":"sha512-g94yXipbmJq3thuKH+w4UMh0OBs9RerpD1VQL28s0Dqyng/VmhdRjappI5pPMqV0MMLxyptFqwHICRbRb/i49w==","shasum":"2c90eec8cb3a149b559e258ae30a5e4c4f92a0f1","tarball":"https://registry.npmjs.org/@bentoproject/date-display/-/date-display-1.2211151402.0.tgz","fileCount":29,"unpackedSize":677013,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCiCgsEvycwWisym2X9XvY+bC7Ptk8S9cFsd+cFHtDt6QIgL0J6LLgf2RS8YR4gj183cmXj2o45h6To5tsbqUIqvhU="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjdS1sACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmqv2g/6AgSK430VNvL39rBbX9/K9VXC150YL+AlUBlcRY7D/f0PLdLK\r\nwcxQ0xmlPIby9PXOQssvSyFmqlAm0VgQ5dT+ijlFwqklQDcvCXE/VB5Z0w8B\r\nW4ofzehS/JFmfG4lkQgCQJYi09Q+NYaMu340nPXH2AYsTsRyLn2eU44kSgLh\r\nDplhYCE9Vwf+FI9jRe4pVf4Jy+e1+dUjsm8ofPwVaiKHRJ3DOy8wcDc1f3Nb\r\nhWQ6xIqsRpDzaFZyoX0zeBB2155w3/gr2m/t1RqXae+bBT/nDzl2rQ9E23Tz\r\no7HJ8D2qMasOjvgPV+OjtJjoa7NIlo44vAE2JwAg9NhsUnXwbcpKP1VjtkcN\r\nKJgA4q4xoaPvu/78WHAYHSmFEK2WwYYSZr47/havycf23C24qULLD3OiuCVX\r\n1tT29l0UF8fwL7hnu4O1eN9LhMsE67rWYuYndfZgY5J39rL8PZf13CEe+1ot\r\nrvaWfi3IRE70PF/YOqxeCCd7glyjNzpQT9Oe6itmd3ja5YVrzUY9BIJU7QLx\r\n2R+hMnZu+L39tcKSxiaxbo4Mv6AUqswAPAy/PG1GI5G2UBdr8tDNHQe3HHpt\r\nREn/9yqiZO4usZoAfpm8x/wd2Cjyx/H0xNUGlCir9ro2zYvnsWXJaqdIxMiL\r\ntq5oOlILlOD4riqimlpE/vFuaSgmZibu/mM=\r\n=E31Y\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"bentoprojectbot","email":"bentobot@amp.dev"},"directories":{},"maintainers":[{"name":"bentoprojectbot","email":"bentobot@amp.dev"},{"name":"kristoferbaxter","email":"kbax@me.com"},{"name":"esth","email":"esther@amp.dev"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/date-display_1.2211151402.0_1668623724324_0.6320358187654347"},"_hasShrinkwrap":false},"1.2211182146.0":{"name":"@bentoproject/date-display","version":"1.2211182146.0","description":"Displays time data that you can render in your page.","author":{"name":"Bento Authors"},"license":"Apache-2.0","main":"./dist/web-component.js","module":"./dist/web-component.module.js","exports":{".":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./web-component":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./preact":{"import":"./dist/component-preact.module.js","require":"./dist/component-preact.js"},"./react":{"import":"./dist/component-react.module.js","require":"./dist/component-react.js"},"./web-component.css":"./dist/web-component.css"},"repository":{"type":"git","url":"git+https://github.com/ampproject/amphtml.git","directory":"extensions/amp-date-display/1.0"},"homepage":"https://github.com/ampproject/amphtml/tree/main/extensions/amp-date-display/1.0","peerDependencies":{"preact":"^10.2.1","react":"^17.0.0"},"dependencies":{"@bentoproject/core":"0.2211182146.0"},"gitHead":"d5bdbc6c36475eb2c4c14f2b02a112669f244641","bugs":{"url":"https://github.com/ampproject/amphtml/issues"},"_id":"@bentoproject/date-display@1.2211182146.0","_nodeVersion":"18.12.0","_npmVersion":"8.19.2","dist":{"integrity":"sha512-LQZNeoMW3/l9OOT6xnCKGIH79146iNxYir0e+uDcJQop89II2Kpv9lUNZYmqu7ZOXDXwmryzjFPVdYko5QQDsw==","shasum":"8d97d0b4f64d20bd0e48a1fe85be62a2289931dc","tarball":"https://registry.npmjs.org/@bentoproject/date-display/-/date-display-1.2211182146.0.tgz","fileCount":29,"unpackedSize":677013,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIEpWpKtSbT3eSK2YyCBVDAcV/JCl3mI7Od3rJQYAYdjYAiA8xATwU9UCWfCo8C/0gyx4ti+tLWMHDGQgvR/1vbeiXg=="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjeJMHACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpYDQ/+Nl8sznLP/MMlqg2ubpPS8kHkfn6NtE5dzFcje4x2OKYLK7FC\r\n/26mTE2myGvHZm/OyS3er+AfggrRSpHkAklOjBbFFYWiHxP+unrMWXu4Ar2F\r\n5lq2uEKDzePxhbQFJIOJ7/x7pYwoScKVar3mq+CdijM6YkQtp1QRhdXxRgdm\r\n1P0DVM1N0CZDq5TFOurZE18e5pmQiPq3A2JQ88UwyBQ0BDA1KZjnkYfYtEz0\r\nKT6QWJXmpgvEg+wSh2tJEPCEVjFoTPsYqkTWkz7gOOmnC4X5+9bW4PUCpi68\r\nhXOHJqzfiQaESHZBl4TgqRf4a1sp2To3Tgvg2z4nvpWUJZOxQD0y7Xvxn289\r\noEEfqWgoJgnxamqOry3ZkL8/0rqa4kxG774/lgvOYUmmOZooJC+e7WMDsPU1\r\n6/R9Su1ZyMQ00MlY7w+UoHGOomhsa4P5US4WyuMpHxsqNb9NVN1/Op6BQuyV\r\nJ/ySSOBCC1MyCsypof5Ir02z8ssTiSGq3GKm7YcsYh6rjCDOX3O33WlRTfsQ\r\nrQD+OLEtTkyu+qCCwcEP1seUOIHQK3s3fgFS0AdtLWWdsEM2yoTB7aHvahYK\r\nHuWQNcrDucjVMvdCYdx0xFspIL9CRBYTvX54QHqfAjoVAI2Pi7TfdLvZ0BLW\r\nK8rdEI62mV2dWWMlznCFg4YwFOeKm78SNdk=\r\n=eSs9\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"bentoprojectbot","email":"bentobot@amp.dev"},"directories":{},"maintainers":[{"name":"bentoprojectbot","email":"bentobot@amp.dev"},{"name":"kristoferbaxter","email":"kbax@me.com"},{"name":"esth","email":"esther@amp.dev"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/date-display_1.2211182146.0_1668846343472_0.9486150372818893"},"_hasShrinkwrap":false},"1.2211250451.0":{"name":"@bentoproject/date-display","version":"1.2211250451.0","description":"Displays time data that you can render in your page.","author":{"name":"Bento Authors"},"license":"Apache-2.0","main":"./dist/web-component.js","module":"./dist/web-component.module.js","exports":{".":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./web-component":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./preact":{"import":"./dist/component-preact.module.js","require":"./dist/component-preact.js"},"./react":{"import":"./dist/component-react.module.js","require":"./dist/component-react.js"},"./web-component.css":"./dist/web-component.css"},"repository":{"type":"git","url":"git+https://github.com/ampproject/amphtml.git","directory":"extensions/amp-date-display/1.0"},"homepage":"https://github.com/ampproject/amphtml/tree/main/extensions/amp-date-display/1.0","peerDependencies":{"preact":"^10.2.1","react":"^17.0.0"},"dependencies":{"@bentoproject/core":"0.2211250451.0"},"gitHead":"3f47d465c6e6f4ea83045b32b2c9f56eccb943e5","bugs":{"url":"https://github.com/ampproject/amphtml/issues"},"_id":"@bentoproject/date-display@1.2211250451.0","_nodeVersion":"18.12.1","_npmVersion":"8.19.2","dist":{"integrity":"sha512-wXd5s9bbxproITE5qMBeDfUmVQnXSpP0Hte6T+Zxtlo+gsQec1McWnt5BeFYVulqLnEuIfNFm5gFlvzJRX3ItQ==","shasum":"8d0ba0880d72e77613ede38860a4027df84954da","tarball":"https://registry.npmjs.org/@bentoproject/date-display/-/date-display-1.2211250451.0.tgz","fileCount":29,"unpackedSize":677013,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIFBiRY+XZv33B+oLtvOKb+AV4FoqDLNObVNlWWSkE4viAiEAr7EBS7SXZwrVpa9t44MbLrniINsgPn/vGlgAoKyRiz4="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjgHuxACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmppQQ/8CHmJwrgWoz2n5gRfbVjhYzyFGqOhFUBWejGr0sGvQl1gKaRw\r\naCpinfWiLsHoIw2HP1f7gm6ABETVRa3p0EZWYuYmAPnZTjy9ObyaH7fV9SIX\r\n73xX4bfHt9+d0njUzK/L8nrgZAL2ZknpZZmRJ5DwcPnDgvQNOb1mQvsne402\r\nXYGkHwflA/kriwynUPBLNobjmbDuv47Gq4qXA9a3rPsb9jl+LO0qm1D6gsIC\r\nBihSRme0drC3X5ltNVMq/YJTQpfvdNfWKWZPZZ7YhaGp0yXekU8WAILslE2c\r\njHD0zqi7Ej96Gc4yyA3BmSJdHnktiVj9Etzvb/+4Y1RQ+mIfIQJvHbGFdgag\r\nVPBGcQNYeAM+4eZjpCS7QRFW4ao19Wm2D3flNmSuVXxp2aGdYz+0du0P3N5G\r\nbPJgThKzZoaWu+iFICs7JKrnk27dvmx7Kp7t3gDiyPNaD8pKhbV9s9LeS2nu\r\nMYopV/vjmjBlWMtbRUjoMV6racYWiIto13rDxnekXafxiIttmDZLY+O0ZTJR\r\nh3K1J29x64K+hBMXOdaRqv5EmrhE6Zj+dLif+I6zr9DW/tqebVr++mE+Sx9x\r\n1JXUC+iWZW2ahxuhzP1VntK0HxAZuzELwUtkXdhS2Ga6vmescUhmdHVmNr3l\r\n9Hhewe7w7dAH23ASTFV866n3575tbLeX58E=\r\n=uE7g\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"bentoprojectbot","email":"bentobot@amp.dev"},"directories":{},"maintainers":[{"name":"bentoprojectbot","email":"bentobot@amp.dev"},{"name":"kristoferbaxter","email":"kbax@me.com"},{"name":"esth","email":"esther@amp.dev"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/date-display_1.2211250451.0_1669364657011_0.7779727974880268"},"_hasShrinkwrap":false},"1.2211302304.0":{"name":"@bentoproject/date-display","version":"1.2211302304.0","description":"Displays time data that you can render in your page.","author":{"name":"Bento Authors"},"license":"Apache-2.0","main":"./dist/web-component.js","module":"./dist/web-component.module.js","exports":{".":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./web-component":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./preact":{"import":"./dist/component-preact.module.js","require":"./dist/component-preact.js"},"./react":{"import":"./dist/component-react.module.js","require":"./dist/component-react.js"},"./web-component.css":"./dist/web-component.css"},"repository":{"type":"git","url":"git+https://github.com/ampproject/amphtml.git","directory":"extensions/amp-date-display/1.0"},"homepage":"https://github.com/ampproject/amphtml/tree/main/extensions/amp-date-display/1.0","peerDependencies":{"preact":"^10.2.1","react":"^17.0.0"},"dependencies":{"@bentoproject/core":"0.2211302304.0"},"readme":"# Bento Date Display\n\nDisplays time data that you can render in your page. By providing specific [attributes](#attributes) in the Bento Date Display tag, the Bento Date Display extension returns a list of time parameters, which you can pass to [an amp-mustache template](../../amp-mustache/amp-mustache.md) for rendering. Refer to the [list below for each returned time parameter](#returned-time-parameters).\n\n## Web Component\n\nYou must include each Bento component's required CSS library to guarantee proper loading and before adding custom styles. Or use the light-weight pre-upgrade styles available inline. See [Layout and style](#layout-and-style).\n\n### Example: Import via npm\n\nInstall via npm:\n\n```sh\nnpm install @bentoproject/bento-date-display\n```\n\n```javascript\nimport {defineElement as defineBentoDateDisplay} from '@bentoproject/bento-date-display';\ndefineBentoDateDisplay();\n```\n\n### Include via `<script>`\n\n```html\n<script type=\"module\" src=\"https://cdn.ampproject.org/bento.mjs\" crossorigin=\"anonymous\"></script>\n<script nomodule src=\"https://cdn.ampproject.org/bento.js\" crossorigin=\"anonymous\"></script>\n<!-- Include bento-mustache.js to use mustache templates with this component -->\n<script async src=\"https://cdn.ampproject.org/v0/bento-mustache.js\"></script>\n<script type=\"module\" src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.mjs\" crossorigin=\"anonymous\"></script>\n<script nomodule src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.js\" crossorigin=\"anonymous\"></script>\n<link rel=\"stylesheet\" href=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.css\" crossorigin=\"anonymous\">\n```\n\n### Example\n\n```html\n<!DOCTYPE html>\n<html>\n  <head>\n    <script\n      type=\"module\"\n      async\n      src=\"https://cdn.ampproject.org/bento.mjs\"\n    ></script>\n    <script nomodule src=\"https://cdn.ampproject.org/bento.js\"></script>\n    <script async src=\"https://cdn.ampproject.org/v0/bento-mustache.js\"></script>\n    <script\n      type=\"module\"\n      async\n      src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.mjs\"\n    ></script>\n    <script\n      nomodule\n      async\n      src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.js\"\n    ></script>\n    <link\n      rel=\"stylesheet\"\n      type=\"text/css\"\n      href=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.css\"\n    />\n  </head>\n  <body>\n    <bento-date-display\n      datetime=\"2021-09-09T16:02:08.494Z\"\n      displayIn=\"utc\"\n      locale=\"en-GB\"\n    >\n      <template>\n        <div>ISO: {{iso}}; locale: {{localeString}}</div>\n      </template>\n    </bento-date-display>\n  </body>\n</html>\n```\n\n### Interactivity and API usage\n\nThe Bento Date Display component does not have an imperative API. However, the Bento Date Display Web Component will render a mustache-template, provided by the consumer in a `<template>` tag with `type=\"amp-mustache\"`. This template may interpolate date-related parameters. See the [Returned Time Parameters section](#returned-time-parameters) for a full list of all the available parameters.\n\n### Layout and style\n\nEach Bento component has a small CSS library you must include to guarantee proper loading without [content shifts](https://web.dev/cls/). Because of order-based specificity, you must manually ensure that stylesheets are included before any custom styles.\n\n```html\n<link rel=\"stylesheet\" type=\"text/css\" href=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.css\">\n```\n\nAlternatively, you may also make the light-weight pre-upgrade styles available inline:\n\n```html\n<style data-bento-boilerplate>\n  bento-date-display {\n    display: block;\n    overflow: hidden;\n    position: relative;\n  }\n</style>\n```\n\n### Attributes\n\n#### `datetime`\n\nThe `datetime` attribute specifies the date and time in a standard ISO 8601 date\nstring (e.g. 2017-08-02T15:05:05.000Z) or the string `now`. If set to `now`,\n`bento-date-display` will use the time the page loaded to render its template.\n\n#### `timestamp-ms`\n\nThe `timestamp-ms` attribute specifies the date and time using the number of\nmilliseconds since 1970-01-01T0:00:00.000Z\n\n#### `timestamp-seconds`\n\nThe `timestamp-seconds` attribute specifies the date and time using the number\nof seconds since 1970-01-01T0:00:00.000Z\n\n#### `locale` (optional)\n\nAn internationalization language string for each timer unit. The default value\nis `en` (for English). This attribute supports all values that are supported by\nthe user's browser.\n\n#### `display-in` (optional)\n\nIf set to the value `utc`, the `display-in` attribute will convert the given\ndate to UTC.\n\n#### `offset-seconds` (optional)\n\nThe `offset-seconds` attribute specifies an integer number of seconds to shift\nthe given date.\n\n#### `data-options-\\*` (optional)\n\nThe `data-options-*` supports all the options under [Intl.DateTimeFormat.options](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/DateTimeFormat#parameters)\nparameter that specifies the formatting style to use for `localeString` format.\nValid attributes include: `data-options-date-style`, `data-options-time-style`, etc.\n\nNote that if `display-in` attrubute is set to `utc`, the value of\n`data-options-time-zone` will automatically be converted to `UTC`.\n\n### Styling\n\nYou may use the `bento-date-display` element selector to style the Bento Date Display component freely.\n\n---\n\n## Preact/React Component\n\n### Import via npm\n\n```sh\nnpm install @bentoproject/date-display\n```\n\n```javascript\nimport React from 'react';\nimport {BentoDateDisplay} from '@bentoproject/date-display/react';\nimport '@bentoproject/date-display/styles.css';\n\nfunction App() {\n  return (\n    <BentoDateDisplay\n      datetime={dateTime}\n      displayIn={displayIn}\n      locale={locale}\n      render={(date) => (\n        <div>{`ISO: ${date.iso}; locale: ${date.localeString}`}</div>\n      )}\n    />\n  );\n}\n```\n\n### Interactivity and API usage\n\nThe Bento Date Display component does not have an imperative API. However, the Bento Date Display Preact/React component does accept a `render` prop that renders the consumer's template. This `render` prop should be a function which the Bento Date Display Preact/React component can use to render its template. The `render` callback will be provided a variety of date-related parameters for consumers to interpolate in the rendered template. See the [`render` prop section](#render) for more information.\n\n### Layout and style\n\nThe Bento Date Display Preact/React component allows consumers to render their own templates. These templates may use inline styles, `<style>` tags, Preact/React components that import their own stylesheets.\n\n### Props\n\n#### `datetime`\n\nRequired prop. Denotes the date and time as a Date, String, or Number. If String, must be a standard ISO 8601 date string (e.g. 2017-08-02T15:05:05.000Z) or the string `now`. If set to `now`, it will use the time the page loaded to render its template. If Number, must be a POSIX epoch value in milliseconds.\n\n#### `displayIn`\n\nOptional prop that can be either `\"utc\"` or `\"local\"` and defaults to `\"local\"`. This prop indicates what timezone to display the date in. If set to the value `\"utc\"`, the component will convert the given date to UTC.\n\n#### `locale`\n\nAn internationalization language string for each timer unit. The default value is `en` (for English). This prop supports all values that are supported by the user's browser.\n\n#### `localeOptions`\n\nThe `localeOptions` object supports all the options under [Intl.DateTimeFormat.options](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/DateTimeFormat#parameters) parameter that specifies the formatting style to use for `localeString` format.\n\nNote that if the `displayIn` prop is set to `utc`, the value of `localeOptions.timeZone` will automatically be converted to `UTC`.\n\n#### `render`\n\nOptional callback that should render a template. The callback will be provided an object with properties/values related to the date expressed in `datetime`.\n\nBy default, the Bento Date Display component will display the [`localeString` form of the Date](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/toLocaleString) for the given locale and localeOption. See the [Returned Time Parameters section](#returned-time-parameters) for more details on how each property will be displayed.\n\n```typescript\n(dateParams: DateParams) => JSXInternal.Element\ninterface DateParams {\n  day: number;\n  dayName: string;\n  dayNameShort: string;\n  dayPeriod: string;\n  dayTwoDigit: string;\n  hour: number;\n  hour12: number;\n  hour12TwoDigit: string;\n  hourTwoDigit: string;\n  iso: string;\n  localeString: string;\n  minute: number;\n  minuteTwoDigit: string;\n  month: number;\n  monthName: string;\n  monthNameShort: string;\n  monthTwoDigit: string;\n  second: number;\n  secondTwoDigit: string;\n  timeZoneName: string;\n  timeZoneNameShort: string;\n  year: number;\n  yearTwoDi: string;\n}\n```\n\n### Returned Time Parameters\n\nThis table lists the format you can specify in your Mustache template:\n\n| Format            | Meaning                                                       |\n| ----------------- | ------------------------------------------------------------- |\n| day               | 1, 2, ...12, 13, etc.                                         |\n| dayName           | string,                                                       |\n| dayNameShort      | string,                                                       |\n| dayPeriod         | string,                                                       |\n| dayTwoDigit       | 01, 02, 03, ..., 12, 13, etc.                                 |\n| hour              | 0, 1, 2, 3, ..., 12, 13, ..., 22, 23                          |\n| hour12            | 1, 2, 3, ..., 12, 1, 2, ..., 11, 12                           |\n| hour12TwoDigit    | 01, 02, ..., 12, 01, 02, ..., 11, 12                          |\n| hourTwoDigit      | 00, 01, 02, ..., 12, 13, ..., 22, 23                          |\n| iso               | A standard ISO8601 date string e.g. 2019-01-23T15:31:21.213Z, |\n| localeString      | A string with a language sensitive representation.            |\n| minute            | 0, 1, 2, ..., 58, 59                                          |\n| minuteTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| month             | 1, 2, 3, ..., 12                                              |\n| monthName         | Internationalized month name string.                          |\n| monthNameShort    | Internationalized abbreviated month name string.,             |\n| monthTwoDigit     | 01, 02, ..., 11, 12                                           |\n| second            | 0, 1, 2, ..., 58, 59                                          |\n| secondTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| timeZoneName      | Internationalized timezone, like `Pacific Daylight Time`      |\n| timeZoneNameShort | Internationalized timezone, abbreviated, like `PST`           |\n| year              | 0, 1, 2, ..., 1999, 2000, 2001, etc.                          |\n| yearTwoDigit      | 00, 01, 02, ..., 17, 18, 19, ..., 98, 99                      |\n","readmeFilename":"README.md","gitHead":"8ec16ecf1bb95c1a6368ab455a6cfc7b1caddc46","bugs":{"url":"https://github.com/ampproject/amphtml/issues"},"_id":"@bentoproject/date-display@1.2211302304.0","_nodeVersion":"18.12.1","_npmVersion":"8.19.2","dist":{"integrity":"sha512-Ytk470Rgwx16GRUFSRYmWyVX7xI+zwOnRNodr73DxS2TkX985ksW8ZB3dnm0RVmAQhrQ4tIj5zHS/xubZ1vH1g==","shasum":"e759324cf4a74c0500d6fd872ab99088a5cf0780","tarball":"https://registry.npmjs.org/@bentoproject/date-display/-/date-display-1.2211302304.0.tgz","fileCount":29,"unpackedSize":677013,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQClWwYeh7IM5B1VbXZ787f82GaeDNOL5tP18TIoUwgDRgIgMlDKPiL+fEzMYU7S3u4XKdObR9aPSyKqwYNNHU4NR9w="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjiGSRACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrpxQ//b+aDpeKG4f+UjoNf/7mCi8IKnvQiwpvGpR2bFzr2YHRQuEDr\r\nHo2R0HvEp/xauect1Ldb7in2bNke/Y+48gCeomSs4r9OqbYmYJEGpVfVBrB1\r\nImDWb7szhMpTt7pxXC0srp5UozaoEE69Mo698KdqThxqIZPQ30ymvRXZ1rGo\r\nbdM34I5R9RizcNYha6j5KQ/IqW5oDxhpkbgp9Q4zyUJ777ubdkYGq8FA5IeO\r\niYuZcV4ASIosV7V3eAmX6Jh56212yHtwnRb+BjCliEO2DGDd2YYNvisJNjaZ\r\nyaPv5NojFMTOPIYmbSeLeVsO7xUvHPXwPunT1jtTbJFwbWEHj3JcyzcxY9AG\r\nWrm4r3V2HF0Ji0GTdeicdgo6IBa6a+X9eaDiFX5Sz83AkQ7wWUMYo9iKsf09\r\nGAsW/ETl6do1QidKIY7CjiNU4bTU5yihBh/7K0GpYpg3WXCXiuIu/fPwP9qM\r\nOPOUAsZKIaeIXsHFOn6Qm3ho9tkkohsVNGG2jkIhgaUEBaBhl+hee4Wqz/gU\r\nQ0ZQ1AaG+8A68JH+NEVk1VXrkAi3kRwBp/xGgOQ5ukKGLOGua3XeOapFYKRH\r\n7rJf4ExWIImS70Pj9N2pPRTwZwrDFL0uMj8DAfAqBaiJjUmql+B843IbEBua\r\nScQHzW+nA/gkRJqCbRF6FkWaUVtW0H/7Ui0=\r\n=y6qk\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"bentoprojectbot","email":"bentobot@amp.dev"},"directories":{},"maintainers":[{"name":"bentoprojectbot","email":"bentobot@amp.dev"},{"name":"kristoferbaxter","email":"kbax@me.com"},{"name":"esth","email":"esther@amp.dev"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/date-display_1.2211302304.0_1669883024897_0.4554378861502746"},"_hasShrinkwrap":false},"1.2212071834.0":{"name":"@bentoproject/date-display","version":"1.2212071834.0","description":"Displays time data that you can render in your page.","author":{"name":"Bento Authors"},"license":"Apache-2.0","main":"./dist/web-component.js","module":"./dist/web-component.module.js","exports":{".":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./web-component":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./preact":{"import":"./dist/component-preact.module.js","require":"./dist/component-preact.js"},"./react":{"import":"./dist/component-react.module.js","require":"./dist/component-react.js"},"./web-component.css":"./dist/web-component.css"},"repository":{"type":"git","url":"git+https://github.com/ampproject/amphtml.git","directory":"extensions/amp-date-display/1.0"},"homepage":"https://github.com/ampproject/amphtml/tree/main/extensions/amp-date-display/1.0","peerDependencies":{"preact":"^10.2.1","react":"^17.0.0"},"dependencies":{"@bentoproject/core":"0.2212071834.0"},"readme":"# Bento Date Display\n\nDisplays time data that you can render in your page. By providing specific [attributes](#attributes) in the Bento Date Display tag, the Bento Date Display extension returns a list of time parameters, which you can pass to [an amp-mustache template](../../amp-mustache/amp-mustache.md) for rendering. Refer to the [list below for each returned time parameter](#returned-time-parameters).\n\n## Web Component\n\nYou must include each Bento component's required CSS library to guarantee proper loading and before adding custom styles. Or use the light-weight pre-upgrade styles available inline. See [Layout and style](#layout-and-style).\n\n### Example: Import via npm\n\nInstall via npm:\n\n```sh\nnpm install @bentoproject/bento-date-display\n```\n\n```javascript\nimport {defineElement as defineBentoDateDisplay} from '@bentoproject/bento-date-display';\ndefineBentoDateDisplay();\n```\n\n### Include via `<script>`\n\n```html\n<script type=\"module\" src=\"https://cdn.ampproject.org/bento.mjs\" crossorigin=\"anonymous\"></script>\n<script nomodule src=\"https://cdn.ampproject.org/bento.js\" crossorigin=\"anonymous\"></script>\n<!-- Include bento-mustache.js to use mustache templates with this component -->\n<script async src=\"https://cdn.ampproject.org/v0/bento-mustache.js\"></script>\n<script type=\"module\" src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.mjs\" crossorigin=\"anonymous\"></script>\n<script nomodule src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.js\" crossorigin=\"anonymous\"></script>\n<link rel=\"stylesheet\" href=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.css\" crossorigin=\"anonymous\">\n```\n\n### Example\n\n```html\n<!DOCTYPE html>\n<html>\n  <head>\n    <script\n      type=\"module\"\n      async\n      src=\"https://cdn.ampproject.org/bento.mjs\"\n    ></script>\n    <script nomodule src=\"https://cdn.ampproject.org/bento.js\"></script>\n    <script async src=\"https://cdn.ampproject.org/v0/bento-mustache.js\"></script>\n    <script\n      type=\"module\"\n      async\n      src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.mjs\"\n    ></script>\n    <script\n      nomodule\n      async\n      src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.js\"\n    ></script>\n    <link\n      rel=\"stylesheet\"\n      type=\"text/css\"\n      href=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.css\"\n    />\n  </head>\n  <body>\n    <bento-date-display\n      datetime=\"2021-09-09T16:02:08.494Z\"\n      displayIn=\"utc\"\n      locale=\"en-GB\"\n    >\n      <template>\n        <div>ISO: {{iso}}; locale: {{localeString}}</div>\n      </template>\n    </bento-date-display>\n  </body>\n</html>\n```\n\n### Interactivity and API usage\n\nThe Bento Date Display component does not have an imperative API. However, the Bento Date Display Web Component will render a mustache-template, provided by the consumer in a `<template>` tag with `type=\"amp-mustache\"`. This template may interpolate date-related parameters. See the [Returned Time Parameters section](#returned-time-parameters) for a full list of all the available parameters.\n\n### Layout and style\n\nEach Bento component has a small CSS library you must include to guarantee proper loading without [content shifts](https://web.dev/cls/). Because of order-based specificity, you must manually ensure that stylesheets are included before any custom styles.\n\n```html\n<link rel=\"stylesheet\" type=\"text/css\" href=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.css\">\n```\n\nAlternatively, you may also make the light-weight pre-upgrade styles available inline:\n\n```html\n<style data-bento-boilerplate>\n  bento-date-display {\n    display: block;\n    overflow: hidden;\n    position: relative;\n  }\n</style>\n```\n\n### Attributes\n\n#### `datetime`\n\nThe `datetime` attribute specifies the date and time in a standard ISO 8601 date\nstring (e.g. 2017-08-02T15:05:05.000Z) or the string `now`. If set to `now`,\n`bento-date-display` will use the time the page loaded to render its template.\n\n#### `timestamp-ms`\n\nThe `timestamp-ms` attribute specifies the date and time using the number of\nmilliseconds since 1970-01-01T0:00:00.000Z\n\n#### `timestamp-seconds`\n\nThe `timestamp-seconds` attribute specifies the date and time using the number\nof seconds since 1970-01-01T0:00:00.000Z\n\n#### `locale` (optional)\n\nAn internationalization language string for each timer unit. The default value\nis `en` (for English). This attribute supports all values that are supported by\nthe user's browser.\n\n#### `display-in` (optional)\n\nIf set to the value `utc`, the `display-in` attribute will convert the given\ndate to UTC.\n\n#### `offset-seconds` (optional)\n\nThe `offset-seconds` attribute specifies an integer number of seconds to shift\nthe given date.\n\n#### `data-options-\\*` (optional)\n\nThe `data-options-*` supports all the options under [Intl.DateTimeFormat.options](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/DateTimeFormat#parameters)\nparameter that specifies the formatting style to use for `localeString` format.\nValid attributes include: `data-options-date-style`, `data-options-time-style`, etc.\n\nNote that if `display-in` attrubute is set to `utc`, the value of\n`data-options-time-zone` will automatically be converted to `UTC`.\n\n### Styling\n\nYou may use the `bento-date-display` element selector to style the Bento Date Display component freely.\n\n---\n\n## Preact/React Component\n\n### Import via npm\n\n```sh\nnpm install @bentoproject/date-display\n```\n\n```javascript\nimport React from 'react';\nimport {BentoDateDisplay} from '@bentoproject/date-display/react';\nimport '@bentoproject/date-display/styles.css';\n\nfunction App() {\n  return (\n    <BentoDateDisplay\n      datetime={dateTime}\n      displayIn={displayIn}\n      locale={locale}\n      render={(date) => (\n        <div>{`ISO: ${date.iso}; locale: ${date.localeString}`}</div>\n      )}\n    />\n  );\n}\n```\n\n### Interactivity and API usage\n\nThe Bento Date Display component does not have an imperative API. However, the Bento Date Display Preact/React component does accept a `render` prop that renders the consumer's template. This `render` prop should be a function which the Bento Date Display Preact/React component can use to render its template. The `render` callback will be provided a variety of date-related parameters for consumers to interpolate in the rendered template. See the [`render` prop section](#render) for more information.\n\n### Layout and style\n\nThe Bento Date Display Preact/React component allows consumers to render their own templates. These templates may use inline styles, `<style>` tags, Preact/React components that import their own stylesheets.\n\n### Props\n\n#### `datetime`\n\nRequired prop. Denotes the date and time as a Date, String, or Number. If String, must be a standard ISO 8601 date string (e.g. 2017-08-02T15:05:05.000Z) or the string `now`. If set to `now`, it will use the time the page loaded to render its template. If Number, must be a POSIX epoch value in milliseconds.\n\n#### `displayIn`\n\nOptional prop that can be either `\"utc\"` or `\"local\"` and defaults to `\"local\"`. This prop indicates what timezone to display the date in. If set to the value `\"utc\"`, the component will convert the given date to UTC.\n\n#### `locale`\n\nAn internationalization language string for each timer unit. The default value is `en` (for English). This prop supports all values that are supported by the user's browser.\n\n#### `localeOptions`\n\nThe `localeOptions` object supports all the options under [Intl.DateTimeFormat.options](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/DateTimeFormat#parameters) parameter that specifies the formatting style to use for `localeString` format.\n\nNote that if the `displayIn` prop is set to `utc`, the value of `localeOptions.timeZone` will automatically be converted to `UTC`.\n\n#### `render`\n\nOptional callback that should render a template. The callback will be provided an object with properties/values related to the date expressed in `datetime`.\n\nBy default, the Bento Date Display component will display the [`localeString` form of the Date](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/toLocaleString) for the given locale and localeOption. See the [Returned Time Parameters section](#returned-time-parameters) for more details on how each property will be displayed.\n\n```typescript\n(dateParams: DateParams) => JSXInternal.Element\ninterface DateParams {\n  day: number;\n  dayName: string;\n  dayNameShort: string;\n  dayPeriod: string;\n  dayTwoDigit: string;\n  hour: number;\n  hour12: number;\n  hour12TwoDigit: string;\n  hourTwoDigit: string;\n  iso: string;\n  localeString: string;\n  minute: number;\n  minuteTwoDigit: string;\n  month: number;\n  monthName: string;\n  monthNameShort: string;\n  monthTwoDigit: string;\n  second: number;\n  secondTwoDigit: string;\n  timeZoneName: string;\n  timeZoneNameShort: string;\n  year: number;\n  yearTwoDi: string;\n}\n```\n\n### Returned Time Parameters\n\nThis table lists the format you can specify in your Mustache template:\n\n| Format            | Meaning                                                       |\n| ----------------- | ------------------------------------------------------------- |\n| day               | 1, 2, ...12, 13, etc.                                         |\n| dayName           | string,                                                       |\n| dayNameShort      | string,                                                       |\n| dayPeriod         | string,                                                       |\n| dayTwoDigit       | 01, 02, 03, ..., 12, 13, etc.                                 |\n| hour              | 0, 1, 2, 3, ..., 12, 13, ..., 22, 23                          |\n| hour12            | 1, 2, 3, ..., 12, 1, 2, ..., 11, 12                           |\n| hour12TwoDigit    | 01, 02, ..., 12, 01, 02, ..., 11, 12                          |\n| hourTwoDigit      | 00, 01, 02, ..., 12, 13, ..., 22, 23                          |\n| iso               | A standard ISO8601 date string e.g. 2019-01-23T15:31:21.213Z, |\n| localeString      | A string with a language sensitive representation.            |\n| minute            | 0, 1, 2, ..., 58, 59                                          |\n| minuteTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| month             | 1, 2, 3, ..., 12                                              |\n| monthName         | Internationalized month name string.                          |\n| monthNameShort    | Internationalized abbreviated month name string.,             |\n| monthTwoDigit     | 01, 02, ..., 11, 12                                           |\n| second            | 0, 1, 2, ..., 58, 59                                          |\n| secondTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| timeZoneName      | Internationalized timezone, like `Pacific Daylight Time`      |\n| timeZoneNameShort | Internationalized timezone, abbreviated, like `PST`           |\n| year              | 0, 1, 2, ..., 1999, 2000, 2001, etc.                          |\n| yearTwoDigit      | 00, 01, 02, ..., 17, 18, 19, ..., 98, 99                      |\n","readmeFilename":"README.md","gitHead":"9e7a659da459058028a29b649ceae3a2dda7771b","bugs":{"url":"https://github.com/ampproject/amphtml/issues"},"_id":"@bentoproject/date-display@1.2212071834.0","_nodeVersion":"18.12.1","_npmVersion":"8.19.2","dist":{"integrity":"sha512-ajdDQxu3Vf4jbZBOUB63f06ksdyWRCn1mLf4Oo8xdPQC6b1yCGmsFmRdfk4NobEW/wPmYKEqhC0I8e2MLpWcsA==","shasum":"adf9247777258a689890b364acf91ececf4db80e","tarball":"https://registry.npmjs.org/@bentoproject/date-display/-/date-display-1.2212071834.0.tgz","fileCount":29,"unpackedSize":677013,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIHT4ifxPmmrq7ub8mUm33AmSVe8y1N+GqlQjo3eMJsjoAiEA6CE7e+fJ3babemsrZF9wWj57UbGG2rNx31Ci3JvfGu4="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjkOtmACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmr0Aw//SncW4qLhUteZf06a0pgQ60YeDNq//ypyTNNPGc64PguMIyVv\r\nDFHvOxZfPXvgYOEmLfOXgph1hXU9WikpRgkiCGemw5TRd5Q0MNp5K+WCkugr\r\neuxa99DBkGukac1cag1Fszw+QBQvQHYwnx+4TxnfPMa3vrpyat5FR/EnIl9Z\r\nUSgIt7qLYH6u09kzcCqL28KyAvqhJJvBKkPb/6BIbxeLDPSR3SHZj2Y54hdi\r\nfaWPZYeRT3i3CJv5Rk3GMIv+r35G3jCiw6kJAjZ3vV3KHbXdeN3a6JxLQIqS\r\nVuqUtaAhK/HaPvNuNSKGIurnXiX4UsLWu2eDTUYVhfAnPW5qrlpcPkCCf7WR\r\nDjF+khrTuk/yU8noG+D6TznUd8zI/Ec7uhGQtID9Jig4UntYPxUvRFU9pBTu\r\nOw+f4cplIenQi0EPOb3XZqWSAe3+V/ya9aK9qzimOMlDo6Pw7IWbt57jxNz7\r\nK7an+3RLCbGAODS/1P37SYyHZfMS9Qld9UNHdp4Qmcu8yb+8TfDVvECewjOX\r\nBgIwmCApzcwllLmZNH5JrUV+NEmWrvfgFmFlMp6LGoBpDWa6oBK+XLMG/a4Q\r\nvfDMfXJoUspLvvfErZrgN6CzampeZB271Kl/kWt3IS9p0EZ7jcMVrFiAcGOa\r\nWViaz1MS+gOT88TZ8qaxktjhUs6x28lHMYA=\r\n=6PRz\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"bentoprojectbot","email":"bentobot@amp.dev"},"directories":{},"maintainers":[{"name":"bentoprojectbot","email":"bentobot@amp.dev"},{"name":"kristoferbaxter","email":"kbax@me.com"},{"name":"esth","email":"esther@amp.dev"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/date-display_1.2212071834.0_1670441829916_0.6452655010479842"},"_hasShrinkwrap":false},"1.2212092023.0":{"name":"@bentoproject/date-display","version":"1.2212092023.0","description":"Displays time data that you can render in your page.","author":{"name":"Bento Authors"},"license":"Apache-2.0","main":"./dist/web-component.js","module":"./dist/web-component.module.js","exports":{".":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./web-component":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./preact":{"import":"./dist/component-preact.module.js","require":"./dist/component-preact.js"},"./react":{"import":"./dist/component-react.module.js","require":"./dist/component-react.js"},"./web-component.css":"./dist/web-component.css"},"repository":{"type":"git","url":"git+https://github.com/ampproject/amphtml.git","directory":"extensions/amp-date-display/1.0"},"homepage":"https://github.com/ampproject/amphtml/tree/main/extensions/amp-date-display/1.0","peerDependencies":{"preact":"^10.2.1","react":"^17.0.0"},"dependencies":{"@bentoproject/core":"0.2212092023.0"},"readme":"# Bento Date Display\n\nDisplays time data that you can render in your page. By providing specific [attributes](#attributes) in the Bento Date Display tag, the Bento Date Display extension returns a list of time parameters, which you can pass to [an amp-mustache template](../../amp-mustache/amp-mustache.md) for rendering. Refer to the [list below for each returned time parameter](#returned-time-parameters).\n\n## Web Component\n\nYou must include each Bento component's required CSS library to guarantee proper loading and before adding custom styles. Or use the light-weight pre-upgrade styles available inline. See [Layout and style](#layout-and-style).\n\n### Example: Import via npm\n\nInstall via npm:\n\n```sh\nnpm install @bentoproject/bento-date-display\n```\n\n```javascript\nimport {defineElement as defineBentoDateDisplay} from '@bentoproject/bento-date-display';\ndefineBentoDateDisplay();\n```\n\n### Include via `<script>`\n\n```html\n<script type=\"module\" src=\"https://cdn.ampproject.org/bento.mjs\" crossorigin=\"anonymous\"></script>\n<script nomodule src=\"https://cdn.ampproject.org/bento.js\" crossorigin=\"anonymous\"></script>\n<!-- Include bento-mustache.js to use mustache templates with this component -->\n<script async src=\"https://cdn.ampproject.org/v0/bento-mustache.js\"></script>\n<script type=\"module\" src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.mjs\" crossorigin=\"anonymous\"></script>\n<script nomodule src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.js\" crossorigin=\"anonymous\"></script>\n<link rel=\"stylesheet\" href=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.css\" crossorigin=\"anonymous\">\n```\n\n### Example\n\n```html\n<!DOCTYPE html>\n<html>\n  <head>\n    <script\n      type=\"module\"\n      async\n      src=\"https://cdn.ampproject.org/bento.mjs\"\n    ></script>\n    <script nomodule src=\"https://cdn.ampproject.org/bento.js\"></script>\n    <script async src=\"https://cdn.ampproject.org/v0/bento-mustache.js\"></script>\n    <script\n      type=\"module\"\n      async\n      src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.mjs\"\n    ></script>\n    <script\n      nomodule\n      async\n      src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.js\"\n    ></script>\n    <link\n      rel=\"stylesheet\"\n      type=\"text/css\"\n      href=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.css\"\n    />\n  </head>\n  <body>\n    <bento-date-display\n      datetime=\"2021-09-09T16:02:08.494Z\"\n      displayIn=\"utc\"\n      locale=\"en-GB\"\n    >\n      <template>\n        <div>ISO: {{iso}}; locale: {{localeString}}</div>\n      </template>\n    </bento-date-display>\n  </body>\n</html>\n```\n\n### Interactivity and API usage\n\nThe Bento Date Display component does not have an imperative API. However, the Bento Date Display Web Component will render a mustache-template, provided by the consumer in a `<template>` tag with `type=\"amp-mustache\"`. This template may interpolate date-related parameters. See the [Returned Time Parameters section](#returned-time-parameters) for a full list of all the available parameters.\n\n### Layout and style\n\nEach Bento component has a small CSS library you must include to guarantee proper loading without [content shifts](https://web.dev/cls/). Because of order-based specificity, you must manually ensure that stylesheets are included before any custom styles.\n\n```html\n<link rel=\"stylesheet\" type=\"text/css\" href=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.css\">\n```\n\nAlternatively, you may also make the light-weight pre-upgrade styles available inline:\n\n```html\n<style data-bento-boilerplate>\n  bento-date-display {\n    display: block;\n    overflow: hidden;\n    position: relative;\n  }\n</style>\n```\n\n### Attributes\n\n#### `datetime`\n\nThe `datetime` attribute specifies the date and time in a standard ISO 8601 date\nstring (e.g. 2017-08-02T15:05:05.000Z) or the string `now`. If set to `now`,\n`bento-date-display` will use the time the page loaded to render its template.\n\n#### `timestamp-ms`\n\nThe `timestamp-ms` attribute specifies the date and time using the number of\nmilliseconds since 1970-01-01T0:00:00.000Z\n\n#### `timestamp-seconds`\n\nThe `timestamp-seconds` attribute specifies the date and time using the number\nof seconds since 1970-01-01T0:00:00.000Z\n\n#### `locale` (optional)\n\nAn internationalization language string for each timer unit. The default value\nis `en` (for English). This attribute supports all values that are supported by\nthe user's browser.\n\n#### `display-in` (optional)\n\nIf set to the value `utc`, the `display-in` attribute will convert the given\ndate to UTC.\n\n#### `offset-seconds` (optional)\n\nThe `offset-seconds` attribute specifies an integer number of seconds to shift\nthe given date.\n\n#### `data-options-\\*` (optional)\n\nThe `data-options-*` supports all the options under [Intl.DateTimeFormat.options](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/DateTimeFormat#parameters)\nparameter that specifies the formatting style to use for `localeString` format.\nValid attributes include: `data-options-date-style`, `data-options-time-style`, etc.\n\nNote that if `display-in` attrubute is set to `utc`, the value of\n`data-options-time-zone` will automatically be converted to `UTC`.\n\n### Styling\n\nYou may use the `bento-date-display` element selector to style the Bento Date Display component freely.\n\n---\n\n## Preact/React Component\n\n### Import via npm\n\n```sh\nnpm install @bentoproject/date-display\n```\n\n```javascript\nimport React from 'react';\nimport {BentoDateDisplay} from '@bentoproject/date-display/react';\nimport '@bentoproject/date-display/styles.css';\n\nfunction App() {\n  return (\n    <BentoDateDisplay\n      datetime={dateTime}\n      displayIn={displayIn}\n      locale={locale}\n      render={(date) => (\n        <div>{`ISO: ${date.iso}; locale: ${date.localeString}`}</div>\n      )}\n    />\n  );\n}\n```\n\n### Interactivity and API usage\n\nThe Bento Date Display component does not have an imperative API. However, the Bento Date Display Preact/React component does accept a `render` prop that renders the consumer's template. This `render` prop should be a function which the Bento Date Display Preact/React component can use to render its template. The `render` callback will be provided a variety of date-related parameters for consumers to interpolate in the rendered template. See the [`render` prop section](#render) for more information.\n\n### Layout and style\n\nThe Bento Date Display Preact/React component allows consumers to render their own templates. These templates may use inline styles, `<style>` tags, Preact/React components that import their own stylesheets.\n\n### Props\n\n#### `datetime`\n\nRequired prop. Denotes the date and time as a Date, String, or Number. If String, must be a standard ISO 8601 date string (e.g. 2017-08-02T15:05:05.000Z) or the string `now`. If set to `now`, it will use the time the page loaded to render its template. If Number, must be a POSIX epoch value in milliseconds.\n\n#### `displayIn`\n\nOptional prop that can be either `\"utc\"` or `\"local\"` and defaults to `\"local\"`. This prop indicates what timezone to display the date in. If set to the value `\"utc\"`, the component will convert the given date to UTC.\n\n#### `locale`\n\nAn internationalization language string for each timer unit. The default value is `en` (for English). This prop supports all values that are supported by the user's browser.\n\n#### `localeOptions`\n\nThe `localeOptions` object supports all the options under [Intl.DateTimeFormat.options](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/DateTimeFormat#parameters) parameter that specifies the formatting style to use for `localeString` format.\n\nNote that if the `displayIn` prop is set to `utc`, the value of `localeOptions.timeZone` will automatically be converted to `UTC`.\n\n#### `render`\n\nOptional callback that should render a template. The callback will be provided an object with properties/values related to the date expressed in `datetime`.\n\nBy default, the Bento Date Display component will display the [`localeString` form of the Date](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/toLocaleString) for the given locale and localeOption. See the [Returned Time Parameters section](#returned-time-parameters) for more details on how each property will be displayed.\n\n```typescript\n(dateParams: DateParams) => JSXInternal.Element\ninterface DateParams {\n  day: number;\n  dayName: string;\n  dayNameShort: string;\n  dayPeriod: string;\n  dayTwoDigit: string;\n  hour: number;\n  hour12: number;\n  hour12TwoDigit: string;\n  hourTwoDigit: string;\n  iso: string;\n  localeString: string;\n  minute: number;\n  minuteTwoDigit: string;\n  month: number;\n  monthName: string;\n  monthNameShort: string;\n  monthTwoDigit: string;\n  second: number;\n  secondTwoDigit: string;\n  timeZoneName: string;\n  timeZoneNameShort: string;\n  year: number;\n  yearTwoDi: string;\n}\n```\n\n### Returned Time Parameters\n\nThis table lists the format you can specify in your Mustache template:\n\n| Format            | Meaning                                                       |\n| ----------------- | ------------------------------------------------------------- |\n| day               | 1, 2, ...12, 13, etc.                                         |\n| dayName           | string,                                                       |\n| dayNameShort      | string,                                                       |\n| dayPeriod         | string,                                                       |\n| dayTwoDigit       | 01, 02, 03, ..., 12, 13, etc.                                 |\n| hour              | 0, 1, 2, 3, ..., 12, 13, ..., 22, 23                          |\n| hour12            | 1, 2, 3, ..., 12, 1, 2, ..., 11, 12                           |\n| hour12TwoDigit    | 01, 02, ..., 12, 01, 02, ..., 11, 12                          |\n| hourTwoDigit      | 00, 01, 02, ..., 12, 13, ..., 22, 23                          |\n| iso               | A standard ISO8601 date string e.g. 2019-01-23T15:31:21.213Z, |\n| localeString      | A string with a language sensitive representation.            |\n| minute            | 0, 1, 2, ..., 58, 59                                          |\n| minuteTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| month             | 1, 2, 3, ..., 12                                              |\n| monthName         | Internationalized month name string.                          |\n| monthNameShort    | Internationalized abbreviated month name string.,             |\n| monthTwoDigit     | 01, 02, ..., 11, 12                                           |\n| second            | 0, 1, 2, ..., 58, 59                                          |\n| secondTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| timeZoneName      | Internationalized timezone, like `Pacific Daylight Time`      |\n| timeZoneNameShort | Internationalized timezone, abbreviated, like `PST`           |\n| year              | 0, 1, 2, ..., 1999, 2000, 2001, etc.                          |\n| yearTwoDigit      | 00, 01, 02, ..., 17, 18, 19, ..., 98, 99                      |\n","readmeFilename":"README.md","gitHead":"16bff17f2a3e911f517c49d1fd2c74c8089e78e0","bugs":{"url":"https://github.com/ampproject/amphtml/issues"},"_id":"@bentoproject/date-display@1.2212092023.0","_nodeVersion":"18.12.1","_npmVersion":"8.19.2","dist":{"integrity":"sha512-wFrn/W6mu8w1IKEW6ZsRL6q7mYlYQn59AwtGdVZQbwU7F9ie2Mi25RXVFNfh4EsKu9NfxYv+rX+L9kHB02kNLg==","shasum":"38b0ee76a36bba176b8a21335c4838c44097b400","tarball":"https://registry.npmjs.org/@bentoproject/date-display/-/date-display-1.2212092023.0.tgz","fileCount":29,"unpackedSize":677013,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCICBzTziiuzUW7tfDxc2Mw8nTLv3PIp/16YnA3s8XRfCPAiEA3dJgv8hnZiATJVrz4m6/O5p+3TbPbirXVZvICNnoOVg="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjlEJWACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmoy3g/8CECmf+g+cp1tvlKUWyRVEbY2nUq9UkFQK9Xml4Eb+KqjzfFh\r\nNRK2RX3UChU9/94tB0qWT2XhAiRL+RxRuTliA8pL8LGoVs0BIS7G0525LWF5\r\nkTRxazUifmyqPuAQQR8SQJn15HC1jkvneLqFwgET/36i3DY22Vnv0ywhN2pW\r\nIzu5f8hvtTugj+X03MunFcLv6QhwQ6D8PHSwmRe/d/l+WH4W5qgsqIRvITrk\r\nVRh9LLlWQ54sFb9TTsbYrxLqHsXLHyYpd+owUZKMErRL3GMopfHOMH7axVn5\r\ncvMJyd02oUDeb5z2psljfOrwcCiAEgyjCdfF4CiI37yWGyARu3efWy8nERII\r\n3HgmFLc9n4Dv9qkjtX0UHKLuBoPsIPWU9dVerEQ1l8O2NLOPujUzirvRUj8j\r\n3Tg9/sd82sW+Na6OgpPUf01VoSJSKylIR5jZY14jf3j/FJAERVLmOXJcDqMm\r\nuFrDqeM2xv54K9k9iUW7rkV38QKswflhwONeToik9zF0pY2ZESauWpBU+kNI\r\ns3zUU2U1o2nll63e1EmTMHMuNGWFqE5COiySDL/22+HllQCyBVJJUMUIL8Pn\r\nN7Je15WZF5+/grAjo23bCetq/3icBDy4cMxJhf5Uru/CA9NtwwXts0f26BzQ\r\nkxrnnKMUedMbrgC012pZBm7M2UVWtnwzsM4=\r\n=ywCR\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"bentoprojectbot","email":"bentobot@amp.dev"},"directories":{},"maintainers":[{"name":"bentoprojectbot","email":"bentobot@amp.dev"},{"name":"kristoferbaxter","email":"kbax@me.com"},{"name":"esth","email":"esther@amp.dev"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/date-display_1.2212092023.0_1670660693881_0.9665988219461339"},"_hasShrinkwrap":false},"1.2211302304.1":{"name":"@bentoproject/date-display","version":"1.2211302304.1","description":"Displays time data that you can render in your page.","author":{"name":"Bento Authors"},"license":"Apache-2.0","main":"./dist/web-component.js","module":"./dist/web-component.module.js","exports":{".":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./web-component":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./preact":{"import":"./dist/component-preact.module.js","require":"./dist/component-preact.js"},"./react":{"import":"./dist/component-react.module.js","require":"./dist/component-react.js"},"./web-component.css":"./dist/web-component.css"},"repository":{"type":"git","url":"git+https://github.com/ampproject/amphtml.git","directory":"extensions/amp-date-display/1.0"},"homepage":"https://github.com/ampproject/amphtml/tree/main/extensions/amp-date-display/1.0","peerDependencies":{"preact":"^10.2.1","react":"^17.0.0"},"dependencies":{"@bentoproject/core":"0.2211302304.1"},"gitHead":"16bff17f2a3e911f517c49d1fd2c74c8089e78e0","bugs":{"url":"https://github.com/ampproject/amphtml/issues"},"_id":"@bentoproject/date-display@1.2211302304.1","_nodeVersion":"18.12.1","_npmVersion":"8.19.2","dist":{"integrity":"sha512-OUkjki/BzO6aT8p5JW5DOi2FldXnq7aLx49SXzprN39bPfdfthEsmq8i8pk2AQvZxm7xxhjoIeCOQVflqNM8YQ==","shasum":"3f5ab6f9fad29d37a6bc95208b34b49e94ac71e2","tarball":"https://registry.npmjs.org/@bentoproject/date-display/-/date-display-1.2211302304.1.tgz","fileCount":29,"unpackedSize":677013,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIFALh4FsaUgrhVZ1R+Hol9t9cWmFbrgZ6D0pnmRkvEq9AiBydEpkqCcMMrwcPfpCKmsVYz9QliAsZ01vfOC7jOp+Cw=="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjmPQzACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmpztg/7BP1PWAVGOYJFB2aVN3kg1sUuNkAln1pg1ipTAxzvrAdLJG6j\r\nm9Qr4WH6/HlmKHF21TlmkJpTRPga7R3R9E6xIC8kAsUNHvcRJKjFKi73VNKN\r\ntudUbB3W2kd823ikkld0IWHHDspnCdVxgVgL80m4zND79hfeT8CB3i4NooMf\r\nXXnoCH1pFPQ78cOkPHbZKHTS9EjH4BRPydKBUGS+KEm0nsZAICijk7qQQg0s\r\nt/4ywl7KUyBIw5eWE0X8JHkRd/9sKNv116xjEWxQkSl4Cc1jNH3MrrHHF3vY\r\nbzKl4fF828Y34qW8OtYbUruwBxyBG49Ej1uwKvW3LIQLj+A1nXE/6fSzykwt\r\naDXvTclOe+MVBUVu4Ah/PeJByg/5nivd4X3CZDogILcclAc5aLJwASLaOZwu\r\nbGOtTcH0CNFOi2IdZ5s/FRMa+Zf7LnqwBPQZLe9l1JB14tibHZPc6ZRGvglG\r\nFxGiZ1dGBn/JGTrbSAT7mZQnkExtOjo/0aZS0ucMBv5dHjim7kKchMOLX2PD\r\nGYZ8MbepLl9njas95on1W8jVc56eefZuru5UhrCqI7jU9k3x7WZjymFzY8Tr\r\nhSsX/T2h3XUAVCBkJ5Tv8ytiP/hZEWhWq/ijGucQ/hWuuc849sgwZ29Mmmap\r\naCQKZTEFnBCzPtsu1sCxfcHtlfll0F9oqAY=\r\n=yF0n\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"bentoprojectbot","email":"bentobot@amp.dev"},"directories":{},"maintainers":[{"name":"bentoprojectbot","email":"bentobot@amp.dev"},{"name":"kristoferbaxter","email":"kbax@me.com"},{"name":"esth","email":"esther@amp.dev"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/date-display_1.2211302304.1_1670968371188_0.04353029350046178"},"_hasShrinkwrap":false},"1.2212151632.0":{"name":"@bentoproject/date-display","version":"1.2212151632.0","description":"Displays time data that you can render in your page.","author":{"name":"Bento Authors"},"license":"Apache-2.0","main":"./dist/web-component.js","module":"./dist/web-component.module.js","exports":{".":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./web-component":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./preact":{"import":"./dist/component-preact.module.js","require":"./dist/component-preact.js"},"./react":{"import":"./dist/component-react.module.js","require":"./dist/component-react.js"},"./web-component.css":"./dist/web-component.css"},"repository":{"type":"git","url":"git+https://github.com/ampproject/amphtml.git","directory":"extensions/amp-date-display/1.0"},"homepage":"https://github.com/ampproject/amphtml/tree/main/extensions/amp-date-display/1.0","peerDependencies":{"preact":"^10.2.1","react":"^17.0.0"},"dependencies":{"@bentoproject/core":"0.2212151632.0"},"readme":"# Bento Date Display\n\nDisplays time data that you can render in your page. By providing specific [attributes](#attributes) in the Bento Date Display tag, the Bento Date Display extension returns a list of time parameters, which you can pass to [an amp-mustache template](../../amp-mustache/amp-mustache.md) for rendering. Refer to the [list below for each returned time parameter](#returned-time-parameters).\n\n## Web Component\n\nYou must include each Bento component's required CSS library to guarantee proper loading and before adding custom styles. Or use the light-weight pre-upgrade styles available inline. See [Layout and style](#layout-and-style).\n\n### Example: Import via npm\n\nInstall via npm:\n\n```sh\nnpm install @bentoproject/bento-date-display\n```\n\n```javascript\nimport {defineElement as defineBentoDateDisplay} from '@bentoproject/bento-date-display';\ndefineBentoDateDisplay();\n```\n\n### Include via `<script>`\n\n```html\n<script type=\"module\" src=\"https://cdn.ampproject.org/bento.mjs\" crossorigin=\"anonymous\"></script>\n<script nomodule src=\"https://cdn.ampproject.org/bento.js\" crossorigin=\"anonymous\"></script>\n<!-- Include bento-mustache.js to use mustache templates with this component -->\n<script async src=\"https://cdn.ampproject.org/v0/bento-mustache.js\"></script>\n<script type=\"module\" src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.mjs\" crossorigin=\"anonymous\"></script>\n<script nomodule src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.js\" crossorigin=\"anonymous\"></script>\n<link rel=\"stylesheet\" href=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.css\" crossorigin=\"anonymous\">\n```\n\n### Example\n\n```html\n<!DOCTYPE html>\n<html>\n  <head>\n    <script\n      type=\"module\"\n      async\n      src=\"https://cdn.ampproject.org/bento.mjs\"\n    ></script>\n    <script nomodule src=\"https://cdn.ampproject.org/bento.js\"></script>\n    <script async src=\"https://cdn.ampproject.org/v0/bento-mustache.js\"></script>\n    <script\n      type=\"module\"\n      async\n      src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.mjs\"\n    ></script>\n    <script\n      nomodule\n      async\n      src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.js\"\n    ></script>\n    <link\n      rel=\"stylesheet\"\n      type=\"text/css\"\n      href=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.css\"\n    />\n  </head>\n  <body>\n    <bento-date-display\n      datetime=\"2021-09-09T16:02:08.494Z\"\n      displayIn=\"utc\"\n      locale=\"en-GB\"\n    >\n      <template>\n        <div>ISO: {{iso}}; locale: {{localeString}}</div>\n      </template>\n    </bento-date-display>\n  </body>\n</html>\n```\n\n### Interactivity and API usage\n\nThe Bento Date Display component does not have an imperative API. However, the Bento Date Display Web Component will render a mustache-template, provided by the consumer in a `<template>` tag with `type=\"amp-mustache\"`. This template may interpolate date-related parameters. See the [Returned Time Parameters section](#returned-time-parameters) for a full list of all the available parameters.\n\n### Layout and style\n\nEach Bento component has a small CSS library you must include to guarantee proper loading without [content shifts](https://web.dev/cls/). Because of order-based specificity, you must manually ensure that stylesheets are included before any custom styles.\n\n```html\n<link rel=\"stylesheet\" type=\"text/css\" href=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.css\">\n```\n\nAlternatively, you may also make the light-weight pre-upgrade styles available inline:\n\n```html\n<style data-bento-boilerplate>\n  bento-date-display {\n    display: block;\n    overflow: hidden;\n    position: relative;\n  }\n</style>\n```\n\n### Attributes\n\n#### `datetime`\n\nThe `datetime` attribute specifies the date and time in a standard ISO 8601 date\nstring (e.g. 2017-08-02T15:05:05.000Z) or the string `now`. If set to `now`,\n`bento-date-display` will use the time the page loaded to render its template.\n\n#### `timestamp-ms`\n\nThe `timestamp-ms` attribute specifies the date and time using the number of\nmilliseconds since 1970-01-01T0:00:00.000Z\n\n#### `timestamp-seconds`\n\nThe `timestamp-seconds` attribute specifies the date and time using the number\nof seconds since 1970-01-01T0:00:00.000Z\n\n#### `locale` (optional)\n\nAn internationalization language string for each timer unit. The default value\nis `en` (for English). This attribute supports all values that are supported by\nthe user's browser.\n\n#### `display-in` (optional)\n\nIf set to the value `utc`, the `display-in` attribute will convert the given\ndate to UTC.\n\n#### `offset-seconds` (optional)\n\nThe `offset-seconds` attribute specifies an integer number of seconds to shift\nthe given date.\n\n#### `data-options-\\*` (optional)\n\nThe `data-options-*` supports all the options under [Intl.DateTimeFormat.options](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/DateTimeFormat#parameters)\nparameter that specifies the formatting style to use for `localeString` format.\nValid attributes include: `data-options-date-style`, `data-options-time-style`, etc.\n\nNote that if `display-in` attrubute is set to `utc`, the value of\n`data-options-time-zone` will automatically be converted to `UTC`.\n\n### Styling\n\nYou may use the `bento-date-display` element selector to style the Bento Date Display component freely.\n\n---\n\n## Preact/React Component\n\n### Import via npm\n\n```sh\nnpm install @bentoproject/date-display\n```\n\n```javascript\nimport React from 'react';\nimport {BentoDateDisplay} from '@bentoproject/date-display/react';\nimport '@bentoproject/date-display/styles.css';\n\nfunction App() {\n  return (\n    <BentoDateDisplay\n      datetime={dateTime}\n      displayIn={displayIn}\n      locale={locale}\n      render={(date) => (\n        <div>{`ISO: ${date.iso}; locale: ${date.localeString}`}</div>\n      )}\n    />\n  );\n}\n```\n\n### Interactivity and API usage\n\nThe Bento Date Display component does not have an imperative API. However, the Bento Date Display Preact/React component does accept a `render` prop that renders the consumer's template. This `render` prop should be a function which the Bento Date Display Preact/React component can use to render its template. The `render` callback will be provided a variety of date-related parameters for consumers to interpolate in the rendered template. See the [`render` prop section](#render) for more information.\n\n### Layout and style\n\nThe Bento Date Display Preact/React component allows consumers to render their own templates. These templates may use inline styles, `<style>` tags, Preact/React components that import their own stylesheets.\n\n### Props\n\n#### `datetime`\n\nRequired prop. Denotes the date and time as a Date, String, or Number. If String, must be a standard ISO 8601 date string (e.g. 2017-08-02T15:05:05.000Z) or the string `now`. If set to `now`, it will use the time the page loaded to render its template. If Number, must be a POSIX epoch value in milliseconds.\n\n#### `displayIn`\n\nOptional prop that can be either `\"utc\"` or `\"local\"` and defaults to `\"local\"`. This prop indicates what timezone to display the date in. If set to the value `\"utc\"`, the component will convert the given date to UTC.\n\n#### `locale`\n\nAn internationalization language string for each timer unit. The default value is `en` (for English). This prop supports all values that are supported by the user's browser.\n\n#### `localeOptions`\n\nThe `localeOptions` object supports all the options under [Intl.DateTimeFormat.options](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/DateTimeFormat#parameters) parameter that specifies the formatting style to use for `localeString` format.\n\nNote that if the `displayIn` prop is set to `utc`, the value of `localeOptions.timeZone` will automatically be converted to `UTC`.\n\n#### `render`\n\nOptional callback that should render a template. The callback will be provided an object with properties/values related to the date expressed in `datetime`.\n\nBy default, the Bento Date Display component will display the [`localeString` form of the Date](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/toLocaleString) for the given locale and localeOption. See the [Returned Time Parameters section](#returned-time-parameters) for more details on how each property will be displayed.\n\n```typescript\n(dateParams: DateParams) => JSXInternal.Element\ninterface DateParams {\n  day: number;\n  dayName: string;\n  dayNameShort: string;\n  dayPeriod: string;\n  dayTwoDigit: string;\n  hour: number;\n  hour12: number;\n  hour12TwoDigit: string;\n  hourTwoDigit: string;\n  iso: string;\n  localeString: string;\n  minute: number;\n  minuteTwoDigit: string;\n  month: number;\n  monthName: string;\n  monthNameShort: string;\n  monthTwoDigit: string;\n  second: number;\n  secondTwoDigit: string;\n  timeZoneName: string;\n  timeZoneNameShort: string;\n  year: number;\n  yearTwoDi: string;\n}\n```\n\n### Returned Time Parameters\n\nThis table lists the format you can specify in your Mustache template:\n\n| Format            | Meaning                                                       |\n| ----------------- | ------------------------------------------------------------- |\n| day               | 1, 2, ...12, 13, etc.                                         |\n| dayName           | string,                                                       |\n| dayNameShort      | string,                                                       |\n| dayPeriod         | string,                                                       |\n| dayTwoDigit       | 01, 02, 03, ..., 12, 13, etc.                                 |\n| hour              | 0, 1, 2, 3, ..., 12, 13, ..., 22, 23                          |\n| hour12            | 1, 2, 3, ..., 12, 1, 2, ..., 11, 12                           |\n| hour12TwoDigit    | 01, 02, ..., 12, 01, 02, ..., 11, 12                          |\n| hourTwoDigit      | 00, 01, 02, ..., 12, 13, ..., 22, 23                          |\n| iso               | A standard ISO8601 date string e.g. 2019-01-23T15:31:21.213Z, |\n| localeString      | A string with a language sensitive representation.            |\n| minute            | 0, 1, 2, ..., 58, 59                                          |\n| minuteTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| month             | 1, 2, 3, ..., 12                                              |\n| monthName         | Internationalized month name string.                          |\n| monthNameShort    | Internationalized abbreviated month name string.,             |\n| monthTwoDigit     | 01, 02, ..., 11, 12                                           |\n| second            | 0, 1, 2, ..., 58, 59                                          |\n| secondTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| timeZoneName      | Internationalized timezone, like `Pacific Daylight Time`      |\n| timeZoneNameShort | Internationalized timezone, abbreviated, like `PST`           |\n| year              | 0, 1, 2, ..., 1999, 2000, 2001, etc.                          |\n| yearTwoDigit      | 00, 01, 02, ..., 17, 18, 19, ..., 98, 99                      |\n","readmeFilename":"README.md","gitHead":"6754eb8b2feb7d6eadedb57776b91613ad5d6dcf","bugs":{"url":"https://github.com/ampproject/amphtml/issues"},"_id":"@bentoproject/date-display@1.2212151632.0","_nodeVersion":"18.12.1","_npmVersion":"8.19.2","dist":{"integrity":"sha512-q0fTTHM9mRHdv9QPrQwx88+fX+di8KL2vri9O+IkiO3Q5YJmXQxzZzi1ptrgQjOc7Rv05G7P6R9HnOx95lG3PQ==","shasum":"b8dd3d5dde5ec96474420df425393ec1f5c4c0bc","tarball":"https://registry.npmjs.org/@bentoproject/date-display/-/date-display-1.2212151632.0.tgz","fileCount":29,"unpackedSize":677013,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCfqi8rD3pSL1ViBm7SNH+5A1R8//NtG66/J5tNsAxSPAIhAKq9TxtTwpHYP5Py/r6Vp6OElZcKKaDpghZeEt4POIkr"}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjodoxACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmq2Ag//d3wq/AzjA3snL25jsisV0jRYyUyplFtHfLYtcVZwCnEXRTNZ\r\nEelm7OA/CJxR4ohQ0/A5WmP4yZrI1ROVSLE3IhT9QGHpqNA+T7mxLppJk3Kq\r\nmQ4A2m2G+wzk1oJiV2UhW/6wFHRBh0ZzzHAnjgb3yySeqA4CR2zskoiMIdoT\r\nIbIg5qmnX43xALGJVAZdtxnu9QtbHywcZt5BDjohLVe/GhwL8GJAYi69rKh3\r\nEIkwUuiJ8Wvy209NSU+oBPFVzd66uSHBP6DGwxkGaL720K/N7qOMkStJB/SA\r\npOYmhWrYKupvyWt2l0J2w93mtlxxYiZVS2fJ2q1RlxIRPJXXxPIEXgRieAHr\r\niE1yF3EOc5vZOzlUG9CjI+9Atp+yeOl7ZHC76PROlhWbWDfJoWBMFN12aMxT\r\n+DlvzGglj2qSp4ZThTRVFwH5v9etpaUx5TCqRVz9H2LPrGxFqqXMtYta093i\r\n8fia/Dz+rbmf0MNftWSPiE5wdQo5KeXYQQzZsQBt28K8dPThrGE8B0503eNK\r\nTU2nssD24ztdVBlzkuep9/j7TjL55GMGCetBoecW40R85HKTlGqoPouFbkPo\r\nKSlZ6fgNKh1itZ+se9pH++VX0+/ZPCsHl1D1l1aKXqGp9gsGhh1YyPBaBA/p\r\nurYKkpoObagATbTAg/qQ1I77zWy6V5eJ4bA=\r\n=tg1O\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"bentoprojectbot","email":"bentobot@amp.dev"},"directories":{},"maintainers":[{"name":"bentoprojectbot","email":"bentobot@amp.dev"},{"name":"kristoferbaxter","email":"kbax@me.com"},{"name":"esth","email":"esther@amp.dev"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/date-display_1.2212151632.0_1671551537269_0.6034391243488186"},"_hasShrinkwrap":false},"1.2212151632.1":{"name":"@bentoproject/date-display","version":"1.2212151632.1","description":"Displays time data that you can render in your page.","author":{"name":"Bento Authors"},"license":"Apache-2.0","main":"./dist/web-component.js","module":"./dist/web-component.module.js","exports":{".":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./web-component":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./preact":{"import":"./dist/component-preact.module.js","require":"./dist/component-preact.js"},"./react":{"import":"./dist/component-react.module.js","require":"./dist/component-react.js"},"./web-component.css":"./dist/web-component.css"},"repository":{"type":"git","url":"git+https://github.com/ampproject/amphtml.git","directory":"extensions/amp-date-display/1.0"},"homepage":"https://github.com/ampproject/amphtml/tree/main/extensions/amp-date-display/1.0","peerDependencies":{"preact":"^10.2.1","react":"^17.0.0"},"dependencies":{"@bentoproject/core":"0.2212151632.1"},"readme":"# Bento Date Display\n\nDisplays time data that you can render in your page. By providing specific [attributes](#attributes) in the Bento Date Display tag, the Bento Date Display extension returns a list of time parameters, which you can pass to [an amp-mustache template](../../amp-mustache/amp-mustache.md) for rendering. Refer to the [list below for each returned time parameter](#returned-time-parameters).\n\n## Web Component\n\nYou must include each Bento component's required CSS library to guarantee proper loading and before adding custom styles. Or use the light-weight pre-upgrade styles available inline. See [Layout and style](#layout-and-style).\n\n### Example: Import via npm\n\nInstall via npm:\n\n```sh\nnpm install @bentoproject/bento-date-display\n```\n\n```javascript\nimport {defineElement as defineBentoDateDisplay} from '@bentoproject/bento-date-display';\ndefineBentoDateDisplay();\n```\n\n### Include via `<script>`\n\n```html\n<script type=\"module\" src=\"https://cdn.ampproject.org/bento.mjs\" crossorigin=\"anonymous\"></script>\n<script nomodule src=\"https://cdn.ampproject.org/bento.js\" crossorigin=\"anonymous\"></script>\n<!-- Include bento-mustache.js to use mustache templates with this component -->\n<script async src=\"https://cdn.ampproject.org/v0/bento-mustache.js\"></script>\n<script type=\"module\" src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.mjs\" crossorigin=\"anonymous\"></script>\n<script nomodule src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.js\" crossorigin=\"anonymous\"></script>\n<link rel=\"stylesheet\" href=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.css\" crossorigin=\"anonymous\">\n```\n\n### Example\n\n```html\n<!DOCTYPE html>\n<html>\n  <head>\n    <script\n      type=\"module\"\n      async\n      src=\"https://cdn.ampproject.org/bento.mjs\"\n    ></script>\n    <script nomodule src=\"https://cdn.ampproject.org/bento.js\"></script>\n    <script async src=\"https://cdn.ampproject.org/v0/bento-mustache.js\"></script>\n    <script\n      type=\"module\"\n      async\n      src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.mjs\"\n    ></script>\n    <script\n      nomodule\n      async\n      src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.js\"\n    ></script>\n    <link\n      rel=\"stylesheet\"\n      type=\"text/css\"\n      href=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.css\"\n    />\n  </head>\n  <body>\n    <bento-date-display\n      datetime=\"2021-09-09T16:02:08.494Z\"\n      displayIn=\"utc\"\n      locale=\"en-GB\"\n    >\n      <template>\n        <div>ISO: {{iso}}; locale: {{localeString}}</div>\n      </template>\n    </bento-date-display>\n  </body>\n</html>\n```\n\n### Interactivity and API usage\n\nThe Bento Date Display component does not have an imperative API. However, the Bento Date Display Web Component will render a mustache-template, provided by the consumer in a `<template>` tag with `type=\"amp-mustache\"`. This template may interpolate date-related parameters. See the [Returned Time Parameters section](#returned-time-parameters) for a full list of all the available parameters.\n\n### Layout and style\n\nEach Bento component has a small CSS library you must include to guarantee proper loading without [content shifts](https://web.dev/cls/). Because of order-based specificity, you must manually ensure that stylesheets are included before any custom styles.\n\n```html\n<link rel=\"stylesheet\" type=\"text/css\" href=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.css\">\n```\n\nAlternatively, you may also make the light-weight pre-upgrade styles available inline:\n\n```html\n<style data-bento-boilerplate>\n  bento-date-display {\n    display: block;\n    overflow: hidden;\n    position: relative;\n  }\n</style>\n```\n\n### Attributes\n\n#### `datetime`\n\nThe `datetime` attribute specifies the date and time in a standard ISO 8601 date\nstring (e.g. 2017-08-02T15:05:05.000Z) or the string `now`. If set to `now`,\n`bento-date-display` will use the time the page loaded to render its template.\n\n#### `timestamp-ms`\n\nThe `timestamp-ms` attribute specifies the date and time using the number of\nmilliseconds since 1970-01-01T0:00:00.000Z\n\n#### `timestamp-seconds`\n\nThe `timestamp-seconds` attribute specifies the date and time using the number\nof seconds since 1970-01-01T0:00:00.000Z\n\n#### `locale` (optional)\n\nAn internationalization language string for each timer unit. The default value\nis `en` (for English). This attribute supports all values that are supported by\nthe user's browser.\n\n#### `display-in` (optional)\n\nIf set to the value `utc`, the `display-in` attribute will convert the given\ndate to UTC.\n\n#### `offset-seconds` (optional)\n\nThe `offset-seconds` attribute specifies an integer number of seconds to shift\nthe given date.\n\n#### `data-options-\\*` (optional)\n\nThe `data-options-*` supports all the options under [Intl.DateTimeFormat.options](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/DateTimeFormat#parameters)\nparameter that specifies the formatting style to use for `localeString` format.\nValid attributes include: `data-options-date-style`, `data-options-time-style`, etc.\n\nNote that if `display-in` attrubute is set to `utc`, the value of\n`data-options-time-zone` will automatically be converted to `UTC`.\n\n### Styling\n\nYou may use the `bento-date-display` element selector to style the Bento Date Display component freely.\n\n---\n\n## Preact/React Component\n\n### Import via npm\n\n```sh\nnpm install @bentoproject/date-display\n```\n\n```javascript\nimport React from 'react';\nimport {BentoDateDisplay} from '@bentoproject/date-display/react';\nimport '@bentoproject/date-display/styles.css';\n\nfunction App() {\n  return (\n    <BentoDateDisplay\n      datetime={dateTime}\n      displayIn={displayIn}\n      locale={locale}\n      render={(date) => (\n        <div>{`ISO: ${date.iso}; locale: ${date.localeString}`}</div>\n      )}\n    />\n  );\n}\n```\n\n### Interactivity and API usage\n\nThe Bento Date Display component does not have an imperative API. However, the Bento Date Display Preact/React component does accept a `render` prop that renders the consumer's template. This `render` prop should be a function which the Bento Date Display Preact/React component can use to render its template. The `render` callback will be provided a variety of date-related parameters for consumers to interpolate in the rendered template. See the [`render` prop section](#render) for more information.\n\n### Layout and style\n\nThe Bento Date Display Preact/React component allows consumers to render their own templates. These templates may use inline styles, `<style>` tags, Preact/React components that import their own stylesheets.\n\n### Props\n\n#### `datetime`\n\nRequired prop. Denotes the date and time as a Date, String, or Number. If String, must be a standard ISO 8601 date string (e.g. 2017-08-02T15:05:05.000Z) or the string `now`. If set to `now`, it will use the time the page loaded to render its template. If Number, must be a POSIX epoch value in milliseconds.\n\n#### `displayIn`\n\nOptional prop that can be either `\"utc\"` or `\"local\"` and defaults to `\"local\"`. This prop indicates what timezone to display the date in. If set to the value `\"utc\"`, the component will convert the given date to UTC.\n\n#### `locale`\n\nAn internationalization language string for each timer unit. The default value is `en` (for English). This prop supports all values that are supported by the user's browser.\n\n#### `localeOptions`\n\nThe `localeOptions` object supports all the options under [Intl.DateTimeFormat.options](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/DateTimeFormat#parameters) parameter that specifies the formatting style to use for `localeString` format.\n\nNote that if the `displayIn` prop is set to `utc`, the value of `localeOptions.timeZone` will automatically be converted to `UTC`.\n\n#### `render`\n\nOptional callback that should render a template. The callback will be provided an object with properties/values related to the date expressed in `datetime`.\n\nBy default, the Bento Date Display component will display the [`localeString` form of the Date](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/toLocaleString) for the given locale and localeOption. See the [Returned Time Parameters section](#returned-time-parameters) for more details on how each property will be displayed.\n\n```typescript\n(dateParams: DateParams) => JSXInternal.Element\ninterface DateParams {\n  day: number;\n  dayName: string;\n  dayNameShort: string;\n  dayPeriod: string;\n  dayTwoDigit: string;\n  hour: number;\n  hour12: number;\n  hour12TwoDigit: string;\n  hourTwoDigit: string;\n  iso: string;\n  localeString: string;\n  minute: number;\n  minuteTwoDigit: string;\n  month: number;\n  monthName: string;\n  monthNameShort: string;\n  monthTwoDigit: string;\n  second: number;\n  secondTwoDigit: string;\n  timeZoneName: string;\n  timeZoneNameShort: string;\n  year: number;\n  yearTwoDi: string;\n}\n```\n\n### Returned Time Parameters\n\nThis table lists the format you can specify in your Mustache template:\n\n| Format            | Meaning                                                       |\n| ----------------- | ------------------------------------------------------------- |\n| day               | 1, 2, ...12, 13, etc.                                         |\n| dayName           | string,                                                       |\n| dayNameShort      | string,                                                       |\n| dayPeriod         | string,                                                       |\n| dayTwoDigit       | 01, 02, 03, ..., 12, 13, etc.                                 |\n| hour              | 0, 1, 2, 3, ..., 12, 13, ..., 22, 23                          |\n| hour12            | 1, 2, 3, ..., 12, 1, 2, ..., 11, 12                           |\n| hour12TwoDigit    | 01, 02, ..., 12, 01, 02, ..., 11, 12                          |\n| hourTwoDigit      | 00, 01, 02, ..., 12, 13, ..., 22, 23                          |\n| iso               | A standard ISO8601 date string e.g. 2019-01-23T15:31:21.213Z, |\n| localeString      | A string with a language sensitive representation.            |\n| minute            | 0, 1, 2, ..., 58, 59                                          |\n| minuteTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| month             | 1, 2, 3, ..., 12                                              |\n| monthName         | Internationalized month name string.                          |\n| monthNameShort    | Internationalized abbreviated month name string.,             |\n| monthTwoDigit     | 01, 02, ..., 11, 12                                           |\n| second            | 0, 1, 2, ..., 58, 59                                          |\n| secondTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| timeZoneName      | Internationalized timezone, like `Pacific Daylight Time`      |\n| timeZoneNameShort | Internationalized timezone, abbreviated, like `PST`           |\n| year              | 0, 1, 2, ..., 1999, 2000, 2001, etc.                          |\n| yearTwoDigit      | 00, 01, 02, ..., 17, 18, 19, ..., 98, 99                      |\n","readmeFilename":"README.md","gitHead":"0daa515ff1e284cb2e31dc8fda7f29c073e60b60","bugs":{"url":"https://github.com/ampproject/amphtml/issues"},"_id":"@bentoproject/date-display@1.2212151632.1","_nodeVersion":"18.12.1","_npmVersion":"8.19.2","dist":{"integrity":"sha512-NJ+zu1+in+aFcjWfiELgnxukAksYnR14OP+dlu8cTcpQFNtJb6nYNKYkKQqgK8/4H+WxZERadjppdKg7QW0OJg==","shasum":"c29501757f0cac7642797b92de9e99ce955f41a5","tarball":"https://registry.npmjs.org/@bentoproject/date-display/-/date-display-1.2212151632.1.tgz","fileCount":29,"unpackedSize":677013,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCSMSYWzixhLYEch2kioKQQz2ZHLsaqwTCwwf8aGz5CsAIgVltJIRkz6erd8l7eF+taAzK7uoK/DTgojsW/MI/ebYs="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjohZ5ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqmXBAAnL77DFuEzcLLERq6TkECQah6wZ0/vgnUeLtJVQUo2BO5Tj6e\r\n3bP+yHvMtIAYGRZ2ykV9lCmHSrwBL2W8oCgu1/HsqXcMKqud4C1Pow3twStj\r\nxP1eeIsYrldKt2Wax4Fh969oJ9JBYammiN4JxGpr1W2cqLwzRPE4u3Ey1XIK\r\nkhhLuDDGx2sfEr7Ce5NlSTh0xDZG5VXcTaAE2BQnhrWa7p3RZ47yVIttXzSJ\r\nANhmCAdk2D+sCNR4iah+XdpyhF9AFuCyvm2upHAndyvszRsIi+Jti0RzWpYQ\r\nvEEQs2FL8g/UsgL/62I1NOe0LVpSjlxlopcMNRNCN1gA/zw/Zip7BrzuVBwV\r\nXwveNBWQU1yubED1fsJdfO1GWJWpdU4LdALDv6cNXQ4ApdsCmroth4xu/zFg\r\nPGoeEpGZQfjKGajChnHAnGm97M2/Y8V6w4PPA4EamyxqkWCAhZgRhArHLydg\r\n1SQg5nqb/dR3Qvz4sh0ACytoPf1fLD8+S7PlQp59sEkgKE578A4s7vlFchpV\r\nkGAr6YtzF65jNrrReGsagauII+TdASdq1oe9ctw46/f6/HBAL/A4yB3JSDCg\r\npe+v/8zIoT4kWtHtj1CsqFE+tA3VWWiVmaiELvVKy6ZCrgJoWCpl/INq/gFk\r\n5bFTHAlOHRDPfNowkAJgKozQ8f0wit2IJ3k=\r\n=K7tH\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"bentoprojectbot","email":"bentobot@amp.dev"},"directories":{},"maintainers":[{"name":"bentoprojectbot","email":"bentobot@amp.dev"},{"name":"kristoferbaxter","email":"kbax@me.com"},{"name":"esth","email":"esther@amp.dev"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/date-display_1.2212151632.1_1671566969792_0.05174700025751755"},"_hasShrinkwrap":false},"1.2211302304.2":{"name":"@bentoproject/date-display","version":"1.2211302304.2","description":"Displays time data that you can render in your page.","author":{"name":"Bento Authors"},"license":"Apache-2.0","main":"./dist/web-component.js","module":"./dist/web-component.module.js","exports":{".":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./web-component":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./preact":{"import":"./dist/component-preact.module.js","require":"./dist/component-preact.js"},"./react":{"import":"./dist/component-react.module.js","require":"./dist/component-react.js"},"./web-component.css":"./dist/web-component.css"},"repository":{"type":"git","url":"git+https://github.com/ampproject/amphtml.git","directory":"extensions/amp-date-display/1.0"},"homepage":"https://github.com/ampproject/amphtml/tree/main/extensions/amp-date-display/1.0","peerDependencies":{"preact":"^10.2.1","react":"^17.0.0"},"dependencies":{"@bentoproject/core":"0.2211302304.2"},"gitHead":"910a4ee7a16075d9db8fd2c6c5bfb607f22bf54f","bugs":{"url":"https://github.com/ampproject/amphtml/issues"},"_id":"@bentoproject/date-display@1.2211302304.2","_nodeVersion":"18.12.1","_npmVersion":"8.19.2","dist":{"integrity":"sha512-4cc6j3z4SQ7h1Y+0DQVtKHNn6DaLuFYNLiX/YjUEN+Q+dKyp38VyDsmWRSl8kRyuW7cCN0GBEosbHi5NRfQw4w==","shasum":"c3b99ecdf6a9b1a3a82be514a3a39999a5a96fb0","tarball":"https://registry.npmjs.org/@bentoproject/date-display/-/date-display-1.2211302304.2.tgz","fileCount":29,"unpackedSize":677013,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCvzwmVK/KwJYvmyZJinFCA+dMonut0PDFRjdJYI7bQuAIhANKKTes753uAWgTxgmPZ2u5mDNW3Y6wD/cw807wAd8Sr"}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjojfwACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpPgA//RhaKtWXtdg/hTqYiwcznuabdsDLHvXoAU0NBll/BLPJLkEpW\r\nrHmB1hP3lj4BQepxkC3YTY+dAfH/9RdQkSJyDquL0XX0uDUGu91yap5ZTy9a\r\nEho2IO/6rRiyg79nvVH6jbDBsQxQUJUVQ37XjHpZD+qN56/5yoPcnQzQH7m8\r\nE18YPzQsFRnjM20KfKxPTqDicyCdjtbpJs2g1pId64yljMz/XFdPiDSXiIy1\r\nvVXYS7WeMMz6um6KheRlGgS1qtrov9dt3QXEDNeyjXQBi6eX5bGY+LPvDR35\r\npr78C9NNv/obWFWjLF2dI5dLTxjx+7Dt6G/Ct3qWIx6wSg5LeBh5MzBtz7ng\r\nX6pvVjVF3sMSX9VPGdeZz2VhgR1VRvb7hmki05huYla1FLu7BPStKhFO7Y02\r\nKIGWZVLcd8BA8Zt4PIhIdztTF42JM6mR88ayB04CtK/x2qaH2JMoDyzdt/NV\r\nJkWJtvsYg7CxRGSt4h/ASqFU5tpTaTGsf+7f2Ji2CXStWnKhrX3pMc8qO9ro\r\nXhfPQTMifZHX4aSr0buOm07phCeQNeTaVjt6PuHztFnrnszfbUJdNQQIKaxk\r\nZf6NZBWlXy7JMhALJFMfkDKUypgfIB+EmJIyICHDJ4KQOdxdOEwRp0v2pVDP\r\nZuhXQs1f6Z38L9vfSsAdjDUiMP1fE+dnZdw=\r\n=6rSC\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"bentoprojectbot","email":"bentobot@amp.dev"},"directories":{},"maintainers":[{"name":"bentoprojectbot","email":"bentobot@amp.dev"},{"name":"kristoferbaxter","email":"kbax@me.com"},{"name":"esth","email":"esther@amp.dev"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/date-display_1.2211302304.2_1671575536567_0.3554644667011668"},"_hasShrinkwrap":false},"1.2212151632.2":{"name":"@bentoproject/date-display","version":"1.2212151632.2","description":"Displays time data that you can render in your page.","author":{"name":"Bento Authors"},"license":"Apache-2.0","main":"./dist/web-component.js","module":"./dist/web-component.module.js","exports":{".":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./web-component":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./preact":{"import":"./dist/component-preact.module.js","require":"./dist/component-preact.js"},"./react":{"import":"./dist/component-react.module.js","require":"./dist/component-react.js"},"./web-component.css":"./dist/web-component.css"},"repository":{"type":"git","url":"git+https://github.com/ampproject/amphtml.git","directory":"extensions/amp-date-display/1.0"},"homepage":"https://github.com/ampproject/amphtml/tree/main/extensions/amp-date-display/1.0","peerDependencies":{"preact":"^10.2.1","react":"^17.0.0"},"dependencies":{"@bentoproject/core":"0.2212151632.2"},"gitHead":"e3ba25e45c2728fd6b1c91daacfcf7d0870ba6e9","bugs":{"url":"https://github.com/ampproject/amphtml/issues"},"_id":"@bentoproject/date-display@1.2212151632.2","_nodeVersion":"18.12.1","_npmVersion":"8.19.2","dist":{"integrity":"sha512-bVcNAvKWjJhA2evLQioV5ku+00y3SbYQ+m2FwB2TelYLdBS1uFPbC9UDDIu9mKTd+87uY6RHBQ39JgUWchQudg==","shasum":"0c5f6e37ccc8b84a8bd0336010b4635377b66ad4","tarball":"https://registry.npmjs.org/@bentoproject/date-display/-/date-display-1.2212151632.2.tgz","fileCount":29,"unpackedSize":677013,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCKRpU5grn2b+pE37ESSilvJgOQjSNyJokL01mds3kIzwIhAOGEuryjPren86+pqedGXSb7SvKrPZKf06ccGvGmaQ5S"}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjtG/QACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrTtA//cODb0HiPX7mAFWE7RZhTl/S8jX9+XqgJSeH2DIzrdWPVEXnn\r\nMDfPUHTtdUQMjqqz3aWTGssSUhrPFkdDmp7PvnpfYcc8vTnySkH5ZldHhGzN\r\nkL5ahhzhYdAvmPWYKiXCU0BXnFw+icP2lL1MjLJLlbph+rWd2509+Gsqjy1/\r\nLjr3P+TUcAKWyeCUmsjawHGHmPfzsB6NSNDSyOa2P4UEbq+CFOdWOTQKAksi\r\nYk1WOEO5aRCmwrnskY48KX5ovYzdVPhNqRMM81HKxioejufbRFcexYl11mES\r\nwgtEyc9sOBb0yCzfUvibKFDNebd7WeQfxKc4FPcjNHjuKS6Xvy8rxN4l+IxR\r\nXpaaXnjRRtUIKE9zrd11P5V8dFTBZiVEcTUepzwsIOUeinecDbvcgze09ZI1\r\nAd1qzjl6utjVJuYRZnHfIM/DD45qFAuvN3ZBFHfxjZN4+SgurfY25amntpxk\r\nknq0IcTFXzttlE+KObl85oD5NtvYMdugA4RdvmLcA8ZB17huhRPbLao2jQwd\r\n54NrqcFk6/K6abnHd0MrR2kR7HZJyD+AkUu1wBTEGDbxMoXzoba04u2omrmK\r\nAFlHDatOE6Z2oA5bpP5uGyR/pLaDCYtWKQMj/CZTC0FhWsOJllCryNbk0lBW\r\nqe9hQhTyAtgXDX8xuNIBhBGS73Y55zKarwU=\r\n=kI3l\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"bentoprojectbot","email":"bentobot@amp.dev"},"directories":{},"maintainers":[{"name":"bentoprojectbot","email":"bentobot@amp.dev"},{"name":"kristoferbaxter","email":"kbax@me.com"},{"name":"esth","email":"esther@amp.dev"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/date-display_1.2212151632.2_1672769488655_0.5375241196954526"},"_hasShrinkwrap":false},"1.2301031703.0":{"name":"@bentoproject/date-display","version":"1.2301031703.0","description":"Displays time data that you can render in your page.","author":{"name":"Bento Authors"},"license":"Apache-2.0","main":"./dist/web-component.js","module":"./dist/web-component.module.js","exports":{".":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./web-component":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./preact":{"import":"./dist/component-preact.module.js","require":"./dist/component-preact.js"},"./react":{"import":"./dist/component-react.module.js","require":"./dist/component-react.js"},"./web-component.css":"./dist/web-component.css"},"repository":{"type":"git","url":"git+https://github.com/ampproject/amphtml.git","directory":"extensions/amp-date-display/1.0"},"homepage":"https://github.com/ampproject/amphtml/tree/main/extensions/amp-date-display/1.0","peerDependencies":{"preact":"^10.2.1","react":"^17.0.0"},"dependencies":{"@bentoproject/core":"0.2301031703.0"},"gitHead":"e3ba25e45c2728fd6b1c91daacfcf7d0870ba6e9","bugs":{"url":"https://github.com/ampproject/amphtml/issues"},"_id":"@bentoproject/date-display@1.2301031703.0","_nodeVersion":"18.12.1","_npmVersion":"8.19.2","dist":{"integrity":"sha512-k6mtVMePyR7PDINfgBczdQq0+iSGjcSAYwowaRe/zF9QW01fD8TPJKGSZaA4/1hIvET1EU/KNhP0fYMb/OHXPg==","shasum":"5455ae6409050273a7443d713f27a12dd32b08b4","tarball":"https://registry.npmjs.org/@bentoproject/date-display/-/date-display-1.2301031703.0.tgz","fileCount":29,"unpackedSize":677013,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCmnjw6oPQmusAH2u9VOlHf3taNM7iZIAmShE46WC1rQwIhAJM1t8q/HIho10CnxFDw5ecS56KXJe1wpDeeOFmGRRoZ"}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjtJBIACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqBtA//VD/WuPEyt2PIMAS7f9kOuYKvwVWCrxQdTYZFVstBk1G1ae2L\r\nnlFBNVhoYB+bRq6c/95Lj9z4D1xrwOLU9qc+9OhII4AAQE3fwR0lMwiGrT5S\r\nzTMA4DgOEulFkSgspZKSl5sWP3ODtdcRZclFiJ0yRI88YWeifBM3ZNTD9s7B\r\nZHKEv4dA94vlDo090m+hcKQ7l7+W2DgYgB0WMBFTD2lRXPeu42dJ35jeY7gz\r\nEbIju9dgaJ/G46sp3gISNitEcIeUv5Gqm1vNDLaePCqORrh0pbfQh448A8UZ\r\nM57u7dMxfh7flAdSNwxZZhAy1UuVe+jj0dy2Akc6c9nkXSQUvzJ2M+aR/ECm\r\nsjMzGWHoL60X7h4F7i9oGOXQ470xQSH7tXNRq+WoG9MmLn7WMC1+guNYYX5N\r\nn2sLdm25Ww3EPF9s/wVh70Vyw6+x6ll9OJ05ouXvbdQIBbb/lXgTmQXVb+97\r\nCmaQU1KOoPt1CInoukfqXMF0qUpt6kn3FX91RzGux48lTObGS/woWlfUb+mt\r\nH4eAK2xkozuXni21gh1dgroYrPLUfmIezxVS4O5wDKZFn/H9Rn4qYxUVspu/\r\ncYHqfwgIDj/MVCVZ/Fu2ylB1uHYO35Y8x6XWENjEhDjXWMCvBEAu0gsZD6NH\r\nxuaeIo4pT3OgHCyXFcjyOuth0t23xcEWC3A=\r\n=vp2F\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"bentoprojectbot","email":"bentobot@amp.dev"},"directories":{},"maintainers":[{"name":"bentoprojectbot","email":"bentobot@amp.dev"},{"name":"kristoferbaxter","email":"kbax@me.com"},{"name":"esth","email":"esther@amp.dev"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/date-display_1.2301031703.0_1672777800455_0.8927205038791766"},"_hasShrinkwrap":false},"1.2301032153.0":{"name":"@bentoproject/date-display","version":"1.2301032153.0","description":"Displays time data that you can render in your page.","author":{"name":"Bento Authors"},"license":"Apache-2.0","main":"./dist/web-component.js","module":"./dist/web-component.module.js","exports":{".":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./web-component":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./preact":{"import":"./dist/component-preact.module.js","require":"./dist/component-preact.js"},"./react":{"import":"./dist/component-react.module.js","require":"./dist/component-react.js"},"./web-component.css":"./dist/web-component.css"},"repository":{"type":"git","url":"git+https://github.com/ampproject/amphtml.git","directory":"extensions/amp-date-display/1.0"},"homepage":"https://github.com/ampproject/amphtml/tree/main/extensions/amp-date-display/1.0","peerDependencies":{"preact":"^10.2.1","react":"^17.0.0"},"dependencies":{"@bentoproject/core":"0.2301032153.0"},"readme":"# Bento Date Display\n\nDisplays time data that you can render in your page. By providing specific [attributes](#attributes) in the Bento Date Display tag, the Bento Date Display extension returns a list of time parameters, which you can pass to [an amp-mustache template](../../amp-mustache/amp-mustache.md) for rendering. Refer to the [list below for each returned time parameter](#returned-time-parameters).\n\n## Web Component\n\nYou must include each Bento component's required CSS library to guarantee proper loading and before adding custom styles. Or use the light-weight pre-upgrade styles available inline. See [Layout and style](#layout-and-style).\n\n### Example: Import via npm\n\nInstall via npm:\n\n```sh\nnpm install @bentoproject/bento-date-display\n```\n\n```javascript\nimport {defineElement as defineBentoDateDisplay} from '@bentoproject/bento-date-display';\ndefineBentoDateDisplay();\n```\n\n### Include via `<script>`\n\n```html\n<script type=\"module\" src=\"https://cdn.ampproject.org/bento.mjs\" crossorigin=\"anonymous\"></script>\n<script nomodule src=\"https://cdn.ampproject.org/bento.js\" crossorigin=\"anonymous\"></script>\n<!-- Include bento-mustache.js to use mustache templates with this component -->\n<script async src=\"https://cdn.ampproject.org/v0/bento-mustache.js\"></script>\n<script type=\"module\" src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.mjs\" crossorigin=\"anonymous\"></script>\n<script nomodule src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.js\" crossorigin=\"anonymous\"></script>\n<link rel=\"stylesheet\" href=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.css\" crossorigin=\"anonymous\">\n```\n\n### Example\n\n```html\n<!DOCTYPE html>\n<html>\n  <head>\n    <script\n      type=\"module\"\n      async\n      src=\"https://cdn.ampproject.org/bento.mjs\"\n    ></script>\n    <script nomodule src=\"https://cdn.ampproject.org/bento.js\"></script>\n    <script async src=\"https://cdn.ampproject.org/v0/bento-mustache.js\"></script>\n    <script\n      type=\"module\"\n      async\n      src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.mjs\"\n    ></script>\n    <script\n      nomodule\n      async\n      src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.js\"\n    ></script>\n    <link\n      rel=\"stylesheet\"\n      type=\"text/css\"\n      href=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.css\"\n    />\n  </head>\n  <body>\n    <bento-date-display\n      datetime=\"2021-09-09T16:02:08.494Z\"\n      displayIn=\"utc\"\n      locale=\"en-GB\"\n    >\n      <template>\n        <div>ISO: {{iso}}; locale: {{localeString}}</div>\n      </template>\n    </bento-date-display>\n  </body>\n</html>\n```\n\n### Interactivity and API usage\n\nThe Bento Date Display component does not have an imperative API. However, the Bento Date Display Web Component will render a mustache-template, provided by the consumer in a `<template>` tag with `type=\"amp-mustache\"`. This template may interpolate date-related parameters. See the [Returned Time Parameters section](#returned-time-parameters) for a full list of all the available parameters.\n\n### Layout and style\n\nEach Bento component has a small CSS library you must include to guarantee proper loading without [content shifts](https://web.dev/cls/). Because of order-based specificity, you must manually ensure that stylesheets are included before any custom styles.\n\n```html\n<link rel=\"stylesheet\" type=\"text/css\" href=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.css\">\n```\n\nAlternatively, you may also make the light-weight pre-upgrade styles available inline:\n\n```html\n<style data-bento-boilerplate>\n  bento-date-display {\n    display: block;\n    overflow: hidden;\n    position: relative;\n  }\n</style>\n```\n\n### Attributes\n\n#### `datetime`\n\nThe `datetime` attribute specifies the date and time in a standard ISO 8601 date\nstring (e.g. 2017-08-02T15:05:05.000Z) or the string `now`. If set to `now`,\n`bento-date-display` will use the time the page loaded to render its template.\n\n#### `timestamp-ms`\n\nThe `timestamp-ms` attribute specifies the date and time using the number of\nmilliseconds since 1970-01-01T0:00:00.000Z\n\n#### `timestamp-seconds`\n\nThe `timestamp-seconds` attribute specifies the date and time using the number\nof seconds since 1970-01-01T0:00:00.000Z\n\n#### `locale` (optional)\n\nAn internationalization language string for each timer unit. The default value\nis `en` (for English). This attribute supports all values that are supported by\nthe user's browser.\n\n#### `display-in` (optional)\n\nIf set to the value `utc`, the `display-in` attribute will convert the given\ndate to UTC.\n\n#### `offset-seconds` (optional)\n\nThe `offset-seconds` attribute specifies an integer number of seconds to shift\nthe given date.\n\n#### `data-options-\\*` (optional)\n\nThe `data-options-*` supports all the options under [Intl.DateTimeFormat.options](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/DateTimeFormat#parameters)\nparameter that specifies the formatting style to use for `localeString` format.\nValid attributes include: `data-options-date-style`, `data-options-time-style`, etc.\n\nNote that if `display-in` attrubute is set to `utc`, the value of\n`data-options-time-zone` will automatically be converted to `UTC`.\n\n### Styling\n\nYou may use the `bento-date-display` element selector to style the Bento Date Display component freely.\n\n---\n\n## Preact/React Component\n\n### Import via npm\n\n```sh\nnpm install @bentoproject/date-display\n```\n\n```javascript\nimport React from 'react';\nimport {BentoDateDisplay} from '@bentoproject/date-display/react';\nimport '@bentoproject/date-display/styles.css';\n\nfunction App() {\n  return (\n    <BentoDateDisplay\n      datetime={dateTime}\n      displayIn={displayIn}\n      locale={locale}\n      render={(date) => (\n        <div>{`ISO: ${date.iso}; locale: ${date.localeString}`}</div>\n      )}\n    />\n  );\n}\n```\n\n### Interactivity and API usage\n\nThe Bento Date Display component does not have an imperative API. However, the Bento Date Display Preact/React component does accept a `render` prop that renders the consumer's template. This `render` prop should be a function which the Bento Date Display Preact/React component can use to render its template. The `render` callback will be provided a variety of date-related parameters for consumers to interpolate in the rendered template. See the [`render` prop section](#render) for more information.\n\n### Layout and style\n\nThe Bento Date Display Preact/React component allows consumers to render their own templates. These templates may use inline styles, `<style>` tags, Preact/React components that import their own stylesheets.\n\n### Props\n\n#### `datetime`\n\nRequired prop. Denotes the date and time as a Date, String, or Number. If String, must be a standard ISO 8601 date string (e.g. 2017-08-02T15:05:05.000Z) or the string `now`. If set to `now`, it will use the time the page loaded to render its template. If Number, must be a POSIX epoch value in milliseconds.\n\n#### `displayIn`\n\nOptional prop that can be either `\"utc\"` or `\"local\"` and defaults to `\"local\"`. This prop indicates what timezone to display the date in. If set to the value `\"utc\"`, the component will convert the given date to UTC.\n\n#### `locale`\n\nAn internationalization language string for each timer unit. The default value is `en` (for English). This prop supports all values that are supported by the user's browser.\n\n#### `localeOptions`\n\nThe `localeOptions` object supports all the options under [Intl.DateTimeFormat.options](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/DateTimeFormat#parameters) parameter that specifies the formatting style to use for `localeString` format.\n\nNote that if the `displayIn` prop is set to `utc`, the value of `localeOptions.timeZone` will automatically be converted to `UTC`.\n\n#### `render`\n\nOptional callback that should render a template. The callback will be provided an object with properties/values related to the date expressed in `datetime`.\n\nBy default, the Bento Date Display component will display the [`localeString` form of the Date](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/toLocaleString) for the given locale and localeOption. See the [Returned Time Parameters section](#returned-time-parameters) for more details on how each property will be displayed.\n\n```typescript\n(dateParams: DateParams) => JSXInternal.Element\ninterface DateParams {\n  day: number;\n  dayName: string;\n  dayNameShort: string;\n  dayPeriod: string;\n  dayTwoDigit: string;\n  hour: number;\n  hour12: number;\n  hour12TwoDigit: string;\n  hourTwoDigit: string;\n  iso: string;\n  localeString: string;\n  minute: number;\n  minuteTwoDigit: string;\n  month: number;\n  monthName: string;\n  monthNameShort: string;\n  monthTwoDigit: string;\n  second: number;\n  secondTwoDigit: string;\n  timeZoneName: string;\n  timeZoneNameShort: string;\n  year: number;\n  yearTwoDi: string;\n}\n```\n\n### Returned Time Parameters\n\nThis table lists the format you can specify in your Mustache template:\n\n| Format            | Meaning                                                       |\n| ----------------- | ------------------------------------------------------------- |\n| day               | 1, 2, ...12, 13, etc.                                         |\n| dayName           | string,                                                       |\n| dayNameShort      | string,                                                       |\n| dayPeriod         | string,                                                       |\n| dayTwoDigit       | 01, 02, 03, ..., 12, 13, etc.                                 |\n| hour              | 0, 1, 2, 3, ..., 12, 13, ..., 22, 23                          |\n| hour12            | 1, 2, 3, ..., 12, 1, 2, ..., 11, 12                           |\n| hour12TwoDigit    | 01, 02, ..., 12, 01, 02, ..., 11, 12                          |\n| hourTwoDigit      | 00, 01, 02, ..., 12, 13, ..., 22, 23                          |\n| iso               | A standard ISO8601 date string e.g. 2019-01-23T15:31:21.213Z, |\n| localeString      | A string with a language sensitive representation.            |\n| minute            | 0, 1, 2, ..., 58, 59                                          |\n| minuteTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| month             | 1, 2, 3, ..., 12                                              |\n| monthName         | Internationalized month name string.                          |\n| monthNameShort    | Internationalized abbreviated month name string.,             |\n| monthTwoDigit     | 01, 02, ..., 11, 12                                           |\n| second            | 0, 1, 2, ..., 58, 59                                          |\n| secondTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| timeZoneName      | Internationalized timezone, like `Pacific Daylight Time`      |\n| timeZoneNameShort | Internationalized timezone, abbreviated, like `PST`           |\n| year              | 0, 1, 2, ..., 1999, 2000, 2001, etc.                          |\n| yearTwoDigit      | 00, 01, 02, ..., 17, 18, 19, ..., 98, 99                      |\n","readmeFilename":"README.md","gitHead":"418b16026c82f72bf8e885668d34a40fe043c9b7","bugs":{"url":"https://github.com/ampproject/amphtml/issues"},"_id":"@bentoproject/date-display@1.2301032153.0","_nodeVersion":"18.12.1","_npmVersion":"8.19.2","dist":{"integrity":"sha512-+TBtEovpqRVJAxvDnt5Vd0xtrU28ux9ztZMAytt1kYwhj/16DxwRnaJ/G3h6wsK+YtRnGbCP1WI2oaUoUmvhgQ==","shasum":"6a0be099b2a5976da7e8e6dff6bd953bb57ac2f2","tarball":"https://registry.npmjs.org/@bentoproject/date-display/-/date-display-1.2301032153.0.tgz","fileCount":29,"unpackedSize":677013,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQC9oO31uu44Cn3lxlxfVsN13gyiHVk9i4I7YNonyXWu0wIgMlzqiNFjunq2NUp8z8txmR9yzFnoIHXUbysX51kxPq0="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjtTfjACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmoexxAAjLrKEOUMpZoZoqBPL73gk70qcInubRGA1TuNxlSgJDTcfr/C\r\nADrelWJlkGws1rICSK7KxkwQI50qZ5eMFIyYl+WbLPGQXQATH4xB85RaWF63\r\noUvkYeDl/w1JRGn9FmlXQ/VPZrtV6UY9oS6JtBc8Kx2wOwiYf53ponF84hGo\r\ndak0HTSj8mr8psPhpgzFwkgXdA5rAyVC2XsTDTox+rTuKroq5kUep5fzW5ui\r\n6BWfBjdBqODfXL+aA9yFpPFNRf3opmJsDAznAsjkD/UJX4GXy63lQwyglapN\r\n/P2pTAi0jNpa5eilRLEmF7JJOvhLyICQ1f18RNXdrSEhXj3UnvKsMt9H+a0B\r\nVmcRrt4nU6zJJ+NkGauTs/o5X7LOfKlz5RjiOYI3cfaTX6mE/KFcOV/btkUs\r\nhHB/iDS9lRUEXj3xNuIPY5XYN9lKlZwIijj6h7KB//8KPQ0kl40W4ILRPUkt\r\nYoeGYA6BpCtjikiApIhecPgLQpzUTDMYvgUVm9BQzq0XOJuGUEISP+yu9NMX\r\nWZgPVervp1FPE4cIOQFkyPuGxwmET6XeLwtkhyi/1d95g7xzW4vXS4UPfvxb\r\nPXSk6cxj57nGFu6AWLgAEuOYf8sd4FoQFqRFVr8l7FQrE1VUAzg9gryhp5KI\r\nte9SqlD6d7fYcxxVqVcLpg2Zzy3ZqlSvLOU=\r\n=HdFX\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"bentoprojectbot","email":"bentobot@amp.dev"},"directories":{},"maintainers":[{"name":"bentoprojectbot","email":"bentobot@amp.dev"},{"name":"kristoferbaxter","email":"kbax@me.com"},{"name":"esth","email":"esther@amp.dev"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/date-display_1.2301032153.0_1672820707284_0.7138797112008184"},"_hasShrinkwrap":false},"1.2301041800.0":{"name":"@bentoproject/date-display","version":"1.2301041800.0","description":"Displays time data that you can render in your page.","author":{"name":"Bento Authors"},"license":"Apache-2.0","main":"./dist/web-component.js","module":"./dist/web-component.module.js","exports":{".":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./web-component":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./preact":{"import":"./dist/component-preact.module.js","require":"./dist/component-preact.js"},"./react":{"import":"./dist/component-react.module.js","require":"./dist/component-react.js"},"./web-component.css":"./dist/web-component.css"},"repository":{"type":"git","url":"git+https://github.com/ampproject/amphtml.git","directory":"extensions/amp-date-display/1.0"},"homepage":"https://github.com/ampproject/amphtml/tree/main/extensions/amp-date-display/1.0","peerDependencies":{"preact":"^10.2.1","react":"^17.0.0"},"dependencies":{"@bentoproject/core":"0.2301041800.0"},"gitHead":"7026aa71b81896aaf30f29b822e1a578138e33e2","bugs":{"url":"https://github.com/ampproject/amphtml/issues"},"_id":"@bentoproject/date-display@1.2301041800.0","_nodeVersion":"18.12.1","_npmVersion":"8.19.2","dist":{"integrity":"sha512-yotJ+G9IPWtU7IE9P4sjwSxuzTTZAQmp2lDGgEhtdlPimLwbIpZN0xuzlv/JYrExM2qml0WJj95v1D21qqkyoA==","shasum":"ad185f551bc349baf515d2cf97b1e6d7e65cdd3c","tarball":"https://registry.npmjs.org/@bentoproject/date-display/-/date-display-1.2301041800.0.tgz","fileCount":29,"unpackedSize":677013,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIH2P32Bw3VZkXKqO8alT991i0lHZaGH3mDuZ8tBvHYsaAiAYTFNphZqg5GBoh8D3TH4ogWfj74OmM0+PMRjkWr+wUA=="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjtol8ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmo8iw//QG+KJMlzT2B77mUsb0EUGMoj9d6RtsAvsDPXhw11cF9yudBt\r\nfiOowLueJR6rL2dMLfpQ3twNHnIEQaMBkzSbxrckSEVVuHMm5Ji0ujrAIyUh\r\nJtEC1AOMYYj4MFLJA9T/8S8VLZVX6MmHd0IMiwKKpqSN8gRTjtXqSIM+/Z7H\r\najLq2AVoTRANiXDEgzwaqPBHRtBMYtMnnkH0C9MT3glgEo8lcK97g0j7u3+L\r\nq1OO16igpdmsBZ1PYC5eLsRDz+aLTSxQU6rrFD9qrUEqyPLMsevqbAzGxhPS\r\nwy07tyfWw2YzqBKgeDeTzRyrt8TXVyPGxwUZdSENMPn0tdRmJ5ffS96kxuQz\r\n7fpZxkcRcFjsVFvhLggbkDzjWSXTPkWx9eDtLng/tUUN3jSyMBHfbo2otEwN\r\n2S75QdZg0FdDVnJkFLS7ZTK5pCOwiVv+XnoU69/SQepZ4XwRXHKFjiq5T1rd\r\nsH2TiqF7q6DBqNOpl9BVLDwFN/adyLJjt/dr8/d6MTYJRdFf9K00emXaq8Ux\r\nEpUghSi3d3etj58+nabHlQzIuiBsF3O3XwLRcoPZ2H0JAWWBDkeehc2PK+o+\r\nShIg0FyCqxRG/tTpKMQRpLUwhPUsuKrv0wcrYtVnfIbfXxyplOiDuG3i44LV\r\njS9ddY4Y9kbZCW+hN62DnUh6PeHPnbsNRPo=\r\n=457g\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"bentoprojectbot","email":"bentobot@amp.dev"},"directories":{},"maintainers":[{"name":"bentoprojectbot","email":"bentobot@amp.dev"},{"name":"kristoferbaxter","email":"kbax@me.com"},{"name":"esth","email":"esther@amp.dev"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/date-display_1.2301041800.0_1672907132214_0.8111550795750124"},"_hasShrinkwrap":false},"1.2301100345.0":{"name":"@bentoproject/date-display","version":"1.2301100345.0","description":"Displays time data that you can render in your page.","author":{"name":"Bento Authors"},"license":"Apache-2.0","main":"./dist/web-component.js","module":"./dist/web-component.module.js","exports":{".":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./web-component":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./preact":{"import":"./dist/component-preact.module.js","require":"./dist/component-preact.js"},"./react":{"import":"./dist/component-react.module.js","require":"./dist/component-react.js"},"./web-component.css":"./dist/web-component.css"},"repository":{"type":"git","url":"git+https://github.com/ampproject/amphtml.git","directory":"extensions/amp-date-display/1.0"},"homepage":"https://github.com/ampproject/amphtml/tree/main/extensions/amp-date-display/1.0","peerDependencies":{"preact":"^10.2.1","react":"^17.0.0"},"dependencies":{"@bentoproject/core":"0.2301100345.0"},"readme":"# Bento Date Display\n\nDisplays time data that you can render in your page. By providing specific [attributes](#attributes) in the Bento Date Display tag, the Bento Date Display extension returns a list of time parameters, which you can pass to [an amp-mustache template](../../amp-mustache/amp-mustache.md) for rendering. Refer to the [list below for each returned time parameter](#returned-time-parameters).\n\n## Web Component\n\nYou must include each Bento component's required CSS library to guarantee proper loading and before adding custom styles. Or use the light-weight pre-upgrade styles available inline. See [Layout and style](#layout-and-style).\n\n### Example: Import via npm\n\nInstall via npm:\n\n```sh\nnpm install @bentoproject/bento-date-display\n```\n\n```javascript\nimport {defineElement as defineBentoDateDisplay} from '@bentoproject/bento-date-display';\ndefineBentoDateDisplay();\n```\n\n### Include via `<script>`\n\n```html\n<script type=\"module\" src=\"https://cdn.ampproject.org/bento.mjs\" crossorigin=\"anonymous\"></script>\n<script nomodule src=\"https://cdn.ampproject.org/bento.js\" crossorigin=\"anonymous\"></script>\n<!-- Include bento-mustache.js to use mustache templates with this component -->\n<script async src=\"https://cdn.ampproject.org/v0/bento-mustache.js\"></script>\n<script type=\"module\" src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.mjs\" crossorigin=\"anonymous\"></script>\n<script nomodule src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.js\" crossorigin=\"anonymous\"></script>\n<link rel=\"stylesheet\" href=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.css\" crossorigin=\"anonymous\">\n```\n\n### Example\n\n```html\n<!DOCTYPE html>\n<html>\n  <head>\n    <script\n      type=\"module\"\n      async\n      src=\"https://cdn.ampproject.org/bento.mjs\"\n    ></script>\n    <script nomodule src=\"https://cdn.ampproject.org/bento.js\"></script>\n    <script async src=\"https://cdn.ampproject.org/v0/bento-mustache.js\"></script>\n    <script\n      type=\"module\"\n      async\n      src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.mjs\"\n    ></script>\n    <script\n      nomodule\n      async\n      src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.js\"\n    ></script>\n    <link\n      rel=\"stylesheet\"\n      type=\"text/css\"\n      href=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.css\"\n    />\n  </head>\n  <body>\n    <bento-date-display\n      datetime=\"2021-09-09T16:02:08.494Z\"\n      displayIn=\"utc\"\n      locale=\"en-GB\"\n    >\n      <template>\n        <div>ISO: {{iso}}; locale: {{localeString}}</div>\n      </template>\n    </bento-date-display>\n  </body>\n</html>\n```\n\n### Interactivity and API usage\n\nThe Bento Date Display component does not have an imperative API. However, the Bento Date Display Web Component will render a mustache-template, provided by the consumer in a `<template>` tag with `type=\"amp-mustache\"`. This template may interpolate date-related parameters. See the [Returned Time Parameters section](#returned-time-parameters) for a full list of all the available parameters.\n\n### Layout and style\n\nEach Bento component has a small CSS library you must include to guarantee proper loading without [content shifts](https://web.dev/cls/). Because of order-based specificity, you must manually ensure that stylesheets are included before any custom styles.\n\n```html\n<link rel=\"stylesheet\" type=\"text/css\" href=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.css\">\n```\n\nAlternatively, you may also make the light-weight pre-upgrade styles available inline:\n\n```html\n<style data-bento-boilerplate>\n  bento-date-display {\n    display: block;\n    overflow: hidden;\n    position: relative;\n  }\n</style>\n```\n\n### Attributes\n\n#### `datetime`\n\nThe `datetime` attribute specifies the date and time in a standard ISO 8601 date\nstring (e.g. 2017-08-02T15:05:05.000Z) or the string `now`. If set to `now`,\n`bento-date-display` will use the time the page loaded to render its template.\n\n#### `timestamp-ms`\n\nThe `timestamp-ms` attribute specifies the date and time using the number of\nmilliseconds since 1970-01-01T0:00:00.000Z\n\n#### `timestamp-seconds`\n\nThe `timestamp-seconds` attribute specifies the date and time using the number\nof seconds since 1970-01-01T0:00:00.000Z\n\n#### `locale` (optional)\n\nAn internationalization language string for each timer unit. The default value\nis `en` (for English). This attribute supports all values that are supported by\nthe user's browser.\n\n#### `display-in` (optional)\n\nIf set to the value `utc`, the `display-in` attribute will convert the given\ndate to UTC.\n\n#### `offset-seconds` (optional)\n\nThe `offset-seconds` attribute specifies an integer number of seconds to shift\nthe given date.\n\n#### `data-options-\\*` (optional)\n\nThe `data-options-*` supports all the options under [Intl.DateTimeFormat.options](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/DateTimeFormat#parameters)\nparameter that specifies the formatting style to use for `localeString` format.\nValid attributes include: `data-options-date-style`, `data-options-time-style`, etc.\n\nNote that if `display-in` attrubute is set to `utc`, the value of\n`data-options-time-zone` will automatically be converted to `UTC`.\n\n### Styling\n\nYou may use the `bento-date-display` element selector to style the Bento Date Display component freely.\n\n---\n\n## Preact/React Component\n\n### Import via npm\n\n```sh\nnpm install @bentoproject/date-display\n```\n\n```javascript\nimport React from 'react';\nimport {BentoDateDisplay} from '@bentoproject/date-display/react';\nimport '@bentoproject/date-display/styles.css';\n\nfunction App() {\n  return (\n    <BentoDateDisplay\n      datetime={dateTime}\n      displayIn={displayIn}\n      locale={locale}\n      render={(date) => (\n        <div>{`ISO: ${date.iso}; locale: ${date.localeString}`}</div>\n      )}\n    />\n  );\n}\n```\n\n### Interactivity and API usage\n\nThe Bento Date Display component does not have an imperative API. However, the Bento Date Display Preact/React component does accept a `render` prop that renders the consumer's template. This `render` prop should be a function which the Bento Date Display Preact/React component can use to render its template. The `render` callback will be provided a variety of date-related parameters for consumers to interpolate in the rendered template. See the [`render` prop section](#render) for more information.\n\n### Layout and style\n\nThe Bento Date Display Preact/React component allows consumers to render their own templates. These templates may use inline styles, `<style>` tags, Preact/React components that import their own stylesheets.\n\n### Props\n\n#### `datetime`\n\nRequired prop. Denotes the date and time as a Date, String, or Number. If String, must be a standard ISO 8601 date string (e.g. 2017-08-02T15:05:05.000Z) or the string `now`. If set to `now`, it will use the time the page loaded to render its template. If Number, must be a POSIX epoch value in milliseconds.\n\n#### `displayIn`\n\nOptional prop that can be either `\"utc\"` or `\"local\"` and defaults to `\"local\"`. This prop indicates what timezone to display the date in. If set to the value `\"utc\"`, the component will convert the given date to UTC.\n\n#### `locale`\n\nAn internationalization language string for each timer unit. The default value is `en` (for English). This prop supports all values that are supported by the user's browser.\n\n#### `localeOptions`\n\nThe `localeOptions` object supports all the options under [Intl.DateTimeFormat.options](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/DateTimeFormat#parameters) parameter that specifies the formatting style to use for `localeString` format.\n\nNote that if the `displayIn` prop is set to `utc`, the value of `localeOptions.timeZone` will automatically be converted to `UTC`.\n\n#### `render`\n\nOptional callback that should render a template. The callback will be provided an object with properties/values related to the date expressed in `datetime`.\n\nBy default, the Bento Date Display component will display the [`localeString` form of the Date](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/toLocaleString) for the given locale and localeOption. See the [Returned Time Parameters section](#returned-time-parameters) for more details on how each property will be displayed.\n\n```typescript\n(dateParams: DateParams) => JSXInternal.Element\ninterface DateParams {\n  day: number;\n  dayName: string;\n  dayNameShort: string;\n  dayPeriod: string;\n  dayTwoDigit: string;\n  hour: number;\n  hour12: number;\n  hour12TwoDigit: string;\n  hourTwoDigit: string;\n  iso: string;\n  localeString: string;\n  minute: number;\n  minuteTwoDigit: string;\n  month: number;\n  monthName: string;\n  monthNameShort: string;\n  monthTwoDigit: string;\n  second: number;\n  secondTwoDigit: string;\n  timeZoneName: string;\n  timeZoneNameShort: string;\n  year: number;\n  yearTwoDi: string;\n}\n```\n\n### Returned Time Parameters\n\nThis table lists the format you can specify in your Mustache template:\n\n| Format            | Meaning                                                       |\n| ----------------- | ------------------------------------------------------------- |\n| day               | 1, 2, ...12, 13, etc.                                         |\n| dayName           | string,                                                       |\n| dayNameShort      | string,                                                       |\n| dayPeriod         | string,                                                       |\n| dayTwoDigit       | 01, 02, 03, ..., 12, 13, etc.                                 |\n| hour              | 0, 1, 2, 3, ..., 12, 13, ..., 22, 23                          |\n| hour12            | 1, 2, 3, ..., 12, 1, 2, ..., 11, 12                           |\n| hour12TwoDigit    | 01, 02, ..., 12, 01, 02, ..., 11, 12                          |\n| hourTwoDigit      | 00, 01, 02, ..., 12, 13, ..., 22, 23                          |\n| iso               | A standard ISO8601 date string e.g. 2019-01-23T15:31:21.213Z, |\n| localeString      | A string with a language sensitive representation.            |\n| minute            | 0, 1, 2, ..., 58, 59                                          |\n| minuteTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| month             | 1, 2, 3, ..., 12                                              |\n| monthName         | Internationalized month name string.                          |\n| monthNameShort    | Internationalized abbreviated month name string.,             |\n| monthTwoDigit     | 01, 02, ..., 11, 12                                           |\n| second            | 0, 1, 2, ..., 58, 59                                          |\n| secondTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| timeZoneName      | Internationalized timezone, like `Pacific Daylight Time`      |\n| timeZoneNameShort | Internationalized timezone, abbreviated, like `PST`           |\n| year              | 0, 1, 2, ..., 1999, 2000, 2001, etc.                          |\n| yearTwoDigit      | 00, 01, 02, ..., 17, 18, 19, ..., 98, 99                      |\n","readmeFilename":"README.md","gitHead":"12a8a2eb9a3656064439da35b736023090e7c78a","bugs":{"url":"https://github.com/ampproject/amphtml/issues"},"_id":"@bentoproject/date-display@1.2301100345.0","_nodeVersion":"18.12.1","_npmVersion":"8.19.2","dist":{"integrity":"sha512-wbUFMv/CMYmDGGqni7hT57AkmLIuNAFC/9quYeJK65kWLTavYUZjRNBu6sbfyBON2YdKWmfQywgU31e++kmsPQ==","shasum":"26b690f44ac9b21191994bca4d8e34f0662783be","tarball":"https://registry.npmjs.org/@bentoproject/date-display/-/date-display-1.2301100345.0.tgz","fileCount":29,"unpackedSize":677013,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIAudrEQ9vi8nkK6N9Blvdvhf9+hLlA/oMyVbLuFE/gavAiEAiQMReSLpbJc6AmYywgG0Rts7Qd/S0XXq9iqVLEuKXpI="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjvSD1ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmo1gw//U3WnNechh4ZnkKvGqsP58py5OyaB3dgAlSdeaoQfVLXwaqtp\r\nRZfyTNKSCRg3mlbRQkzC2VtFbnkOW9xLFT9nbQhG8N095pe7IHZJG+/ZEGSa\r\ndc58QX5mcY0BAWdae1R4WpPzbYieoxMc3ACoP7MsfHPlQ+bhhSKHcncoy0EH\r\nV3zfTyprCDOnZ4nJLrPrK1xCv1KH3ySRxrI4rLEF1A3IsfYwYIyNbdGH3Ry8\r\npDN/MpbvPtbwBahST8faExEGohbXdojq+XYghpLvUe7RV1SU1SnV2e9I/Ttf\r\nvZLyYO6Vpg2bIoWTDheV14IS/oezupI46cDm0ZcVJY+5gYSZcxesdEJ/B7Qn\r\nyBuyYVwQQhV5AqtLFkbAhmYpqrScAWJ+F6w+f5HRGm2W9wdgKzwF+dNVfz+0\r\nq0QXQSl7WVad1hftxt3uwcty/HL7o/35Qc554eFfFd4hKRtch+o6uueOBqhO\r\n2MskpN/DwPA7mIXkQr5TbcMUMO6U4FlrVzG6RGB8UCuyz3ybpqfAeQg+mokR\r\nfisPYo31Cd32kDx4fxgiUhUnMRAOjwEupti/QzIVbB9nSp2AQdMDSh/9CzSQ\r\npYy7kxjkY0VDwt6EiFJReBF4MhoOBhQ6eP0xUR3njYt7dcGcWOBzgI0rJPWB\r\neWeYxh/RYchdCOehCIXt4OB58NS70yfnM0w=\r\n=H4oD\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"bentoprojectbot","email":"bentobot@amp.dev"},"directories":{},"maintainers":[{"name":"bentoprojectbot","email":"bentobot@amp.dev"},{"name":"kristoferbaxter","email":"kbax@me.com"},{"name":"esth","email":"esther@amp.dev"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/date-display_1.2301100345.0_1673339124781_0.4637326171669036"},"_hasShrinkwrap":false},"1.2301112346.0":{"name":"@bentoproject/date-display","version":"1.2301112346.0","description":"Displays time data that you can render in your page.","author":{"name":"Bento Authors"},"license":"Apache-2.0","main":"./dist/web-component.js","module":"./dist/web-component.module.js","exports":{".":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./web-component":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./preact":{"import":"./dist/component-preact.module.js","require":"./dist/component-preact.js"},"./react":{"import":"./dist/component-react.module.js","require":"./dist/component-react.js"},"./web-component.css":"./dist/web-component.css"},"repository":{"type":"git","url":"git+https://github.com/ampproject/amphtml.git","directory":"extensions/amp-date-display/1.0"},"homepage":"https://github.com/ampproject/amphtml/tree/main/extensions/amp-date-display/1.0","peerDependencies":{"preact":"^10.2.1","react":"^17.0.0"},"dependencies":{"@bentoproject/core":"0.2301112346.0"},"gitHead":"290809452fa1006da1ea148fc925beb127bc65a4","bugs":{"url":"https://github.com/ampproject/amphtml/issues"},"_id":"@bentoproject/date-display@1.2301112346.0","_nodeVersion":"18.12.1","_npmVersion":"8.19.2","dist":{"integrity":"sha512-D/KS2ghRW9eqB5yUtqvPr+XALhJUKrD/a44068+Cwnr25fcXZo5cmO0PnsUot6JJCRrYHLQYxjFZsJWVje/3cQ==","shasum":"965f4ecea9d2e24cfd12c8ff3b5f5c7f90cafdc2","tarball":"https://registry.npmjs.org/@bentoproject/date-display/-/date-display-1.2301112346.0.tgz","fileCount":29,"unpackedSize":677013,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQC5hXL/YzCZU1h+fs+UMBLWTs2oF92SryXXeWBVh4QpIgIgfCZS/E0Sj3wBz6dQ4vI+AC3q56SZuXspdieTRfDJ0fM="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjv8Q9ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmoGLQ//S7uS8rbgnzZvAXde8cGlD2Lo+QiIgfSAs6k8sZidvxvSgpbP\r\nZRw7sg2qeP9JufCXdDzqu4NI85+zgSr8pjXls4Dz+BIMfBVUAdIEDh83Rzds\r\nzUi9CxOOIsNJP/jR5716oNOWsMoVLthIyxI4xTUzcn+FauWLzSurlNI12A8V\r\nsn5nXhm/YZMwhpQLNctjZevBjMW1M3dqANDj5/u/AnPjco7H22eLxgB79y2Q\r\nfnvQqz/P9FT/IhvWflIx8/m9tg8/mtUYTFfAiwt/QWSt5U475rOQJrUPELEy\r\ncjcW5+Ti/k9Xmi+MjcUClk8YJqjT0W3ArgSeGQSvVxGF/KDkOe/BZAVAToaR\r\nDrxeshkYOAq0e8eGffCT2VpnPqO0nXpJv5JG16O1HnLus6MGEllgB+LLzW6H\r\nQJbCvlCb5dyoLVS0T+juWk9S7xvk5Y8z0Eb+JOWky39SpZB/U5e0hqZSH2BU\r\nbn1gW15BdHiUXAIsHqTHMf3ADxbeCQBeaPOgh+Fvlx/huttqyCKe0H2YKlaz\r\nZbfrKVxaZgjswWVYROXQR7oa7HLwu58171C0ssE3D0JVu9/DDS2p4uythKG5\r\n1riAJ8k9IwNyBt397AwvjDoP3j5VelR/12pj6NY5xmbUiztDU11nd8c0boci\r\nMq38NNcv3kBvk1Vy/ya4U/FIKL5zUtOHiXI=\r\n=2M0M\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"bentoprojectbot","email":"bentobot@amp.dev"},"directories":{},"maintainers":[{"name":"bentoprojectbot","email":"bentobot@amp.dev"},{"name":"kristoferbaxter","email":"kbax@me.com"},{"name":"esth","email":"esther@amp.dev"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/date-display_1.2301112346.0_1673511997627_0.11370688599229029"},"_hasShrinkwrap":false},"1.2301181928.0":{"name":"@bentoproject/date-display","version":"1.2301181928.0","description":"Displays time data that you can render in your page.","author":{"name":"Bento Authors"},"license":"Apache-2.0","main":"./dist/web-component.js","module":"./dist/web-component.module.js","exports":{".":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./web-component":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./preact":{"import":"./dist/component-preact.module.js","require":"./dist/component-preact.js"},"./react":{"import":"./dist/component-react.module.js","require":"./dist/component-react.js"},"./web-component.css":"./dist/web-component.css"},"repository":{"type":"git","url":"git+https://github.com/ampproject/amphtml.git","directory":"extensions/amp-date-display/1.0"},"homepage":"https://github.com/ampproject/amphtml/tree/main/extensions/amp-date-display/1.0","peerDependencies":{"preact":"^10.2.1","react":"^17.0.0"},"dependencies":{"@bentoproject/core":"0.2301181928.0"},"gitHead":"8d4b04c8f4aed6f3fb83e6cdd785a334ecaa8a4f","bugs":{"url":"https://github.com/ampproject/amphtml/issues"},"_id":"@bentoproject/date-display@1.2301181928.0","_nodeVersion":"18.13.0","_npmVersion":"8.19.3","dist":{"integrity":"sha512-KsI/8LzXCGW7pqjPrincjee/Nfw96jibNgrX9FRXOA3sKgC+UNKQ7/9P/FyfiaCL3Yb+uSWa5zkIEBSitIjWSw==","shasum":"d9c0abb69a50c6b9b01a627e1a70cbf7305624c9","tarball":"https://registry.npmjs.org/@bentoproject/date-display/-/date-display-1.2301181928.0.tgz","fileCount":29,"unpackedSize":677013,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCLwr3oAfIQyd/nMqfI1xHXT+NPtR5ofWaazsUbnL8C3wIgYQ7fi5/Z8uuyiy7wmuqAMEuJ9LF1YiZ42uBbOJSMomo="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjyP6KACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmoWtQ//d9PLWbM6J1AZ+584Bsca3c4E+qEhzsg6yr+sSWjYaKtRf4Ii\r\nx3ZVF4Dfg0jqLfbOq5ju8Yhz93i7T1fsUo1SVDR8N4U4L0nB6BSCptCRDgnA\r\n+fHRRjs9XchtNH553u8OLhgEYMvLZiCnD0o19oz5zPaLs7gW0B5mH62zE/Iy\r\ne+NdxAXjrrRNud2Vb+CLIILGt/zTHG92V2FKSmvoxO/hfx3yGopwLILVzEYV\r\n6rWAh9H3ei3tV7n4LlK+quEL2q+CT3rrb3SLu/kfT0+0lKXAeGp1Z0/YBQY3\r\n1Y/MQvYqga+kuyDAx2JX9sDaIZazcloRbVJd2xfeYSSZQMVBnGUAsv8/gJZ1\r\ntLXdIcMgn8/sO/ciyPKvLi8Dja/lbrmISAPvRzs1hHUUl3BRrWVWVR+jmQiQ\r\nOF5N8roq9pjJ/SEYBx+xEXNEyyjJHcIDUnS5ir5cmQpP/fpjcn2syaUW+eNv\r\nhMm5WPqrqC94ETQWdYXgaJTD/DmZOZBYTW+kd9nG9eHVvIqMywjRLD78vGiS\r\nP54RGFn3xW/q+Q6QCFhoPoifCkNvGgx/adK6uZMyBp5EbgNQgTzY7Gqv7zOM\r\nWwQStheNs3QWfj/P1C1dQDmIH2rHmdq7S/DneiGCe8qO/9RKPY+D4FvI8G+3\r\n1hIPuifHgu9NY9xlmuoQ6eoI/xKObKLYvUw=\r\n=Ue7w\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"bentoprojectbot","email":"bentobot@amp.dev"},"directories":{},"maintainers":[{"name":"bentoprojectbot","email":"bentobot@amp.dev"},{"name":"kristoferbaxter","email":"kbax@me.com"},{"name":"esth","email":"esther@amp.dev"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/date-display_1.2301181928.0_1674116745989_0.6555135250841597"},"_hasShrinkwrap":false},"1.2301261900.0":{"name":"@bentoproject/date-display","version":"1.2301261900.0","description":"Displays time data that you can render in your page.","author":{"name":"Bento Authors"},"license":"Apache-2.0","main":"./dist/web-component.js","module":"./dist/web-component.module.js","exports":{".":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./web-component":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./preact":{"import":"./dist/component-preact.module.js","require":"./dist/component-preact.js"},"./react":{"import":"./dist/component-react.module.js","require":"./dist/component-react.js"},"./web-component.css":"./dist/web-component.css"},"repository":{"type":"git","url":"git+https://github.com/ampproject/amphtml.git","directory":"extensions/amp-date-display/1.0"},"homepage":"https://github.com/ampproject/amphtml/tree/main/extensions/amp-date-display/1.0","peerDependencies":{"preact":"^10.2.1","react":"^17.0.0"},"dependencies":{"@bentoproject/core":"0.2301261900.0"},"gitHead":"a6ea9dbc37fe6d4b0f68e25838c857835dd4f7e7","bugs":{"url":"https://github.com/ampproject/amphtml/issues"},"_id":"@bentoproject/date-display@1.2301261900.0","_nodeVersion":"18.13.0","_npmVersion":"8.19.3","dist":{"integrity":"sha512-xhohEemFl4QxfxpLw/6GbD5YgL5DPTzwDGohufV3EO3OmDiSlcfuo0AvD4fVHldMkrVfPyGIy20UysMW2Qk07w==","shasum":"d534d7d37d9f153c79ada0f01c3ad46dc0c2b98a","tarball":"https://registry.npmjs.org/@bentoproject/date-display/-/date-display-1.2301261900.0.tgz","fileCount":29,"unpackedSize":677013,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIGDKsTUYm62El+SEEWaBfTuJxkGOQrITOFrtE1tL6oW4AiB+8laOAy+P+sOfYRMlMbKmpXZqrd6mO65RBL1Q/kfjmg=="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJj04q+ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrjSw/7BX/44P8M/1alcKHxSwVGOUnu3uiRaCxpI9R4l4zmqwQHHUVq\r\nrLiKwr4j4zUkBPDFvQH0OD97NbUt378FoUOb5Kzzrar0BatHNVL1wU/zs3UP\r\nWtmpRuLDNQWY0vk0NNvKWDOrizMZevFZEbdKdi7dQnhpF+1C1RnwWDe1mGdO\r\nDTLb/Np/hfVoGpan+nnE+ec44Od/xI8qTNk7HLzs5wody52k0zfh8ToTvPjK\r\n0sU57A3J7TEh+2pWMm6we0vh9BGr3WnFZIDJS6P7O8Si7+zdHMe+OCRa/6u3\r\nd3fLx6tyxvYHuR0img4Qvw98fnTBrepcYOuB+OKcHO93jv1giwI3JUJehnHJ\r\nhSmTNDw+xCMYGJRTBBZ+fTn7zBvukKW8HcDJUjenLj+SYCNClXL4lnXfVDA9\r\nyMSc63/oTLKt72LEBsAlNbsHPjC/Qtkf/lEJOMee64PiOk1/L5c1zRjKXPHT\r\npCAKalIpA7QqAvpnlXgWh9JbQusFEOF49dZHY8FR5xlgmoVRoUKEhh81UIVr\r\nPeGGWxqrHfgFo8Lv2lmpjGfeEvB546Cny1xfSJUuQHvGQHLP4/76kZqkp/iE\r\n706SAm3c+O8peczxpe2Tg4NnNprGrFtjBHdsp6RZUfroGzbIfccIdNLaN8xk\r\nnGRnsdkHYRTyHejhePl4bR5TqZBtRcXn/gQ=\r\n=o0cF\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"bentoprojectbot","email":"bentobot@amp.dev"},"directories":{},"maintainers":[{"name":"bentoprojectbot","email":"bentobot@amp.dev"},{"name":"kristoferbaxter","email":"kbax@me.com"},{"name":"esth","email":"esther@amp.dev"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/date-display_1.2301261900.0_1674807998155_0.2123694230437041"},"_hasShrinkwrap":false},"1.2301301810.0":{"name":"@bentoproject/date-display","version":"1.2301301810.0","description":"Displays time data that you can render in your page.","author":{"name":"Bento Authors"},"license":"Apache-2.0","main":"./dist/web-component.js","module":"./dist/web-component.module.js","exports":{".":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./web-component":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./preact":{"import":"./dist/component-preact.module.js","require":"./dist/component-preact.js"},"./react":{"import":"./dist/component-react.module.js","require":"./dist/component-react.js"},"./web-component.css":"./dist/web-component.css"},"repository":{"type":"git","url":"git+https://github.com/ampproject/amphtml.git","directory":"extensions/amp-date-display/1.0"},"homepage":"https://github.com/ampproject/amphtml/tree/main/extensions/amp-date-display/1.0","peerDependencies":{"preact":"^10.2.1","react":"^17.0.0"},"dependencies":{"@bentoproject/core":"0.2301301810.0"},"readme":"# Bento Date Display\n\nDisplays time data that you can render in your page. By providing specific [attributes](#attributes) in the Bento Date Display tag, the Bento Date Display extension returns a list of time parameters, which you can pass to [an amp-mustache template](../../amp-mustache/amp-mustache.md) for rendering. Refer to the [list below for each returned time parameter](#returned-time-parameters).\n\n## Web Component\n\nYou must include each Bento component's required CSS library to guarantee proper loading and before adding custom styles. Or use the light-weight pre-upgrade styles available inline. See [Layout and style](#layout-and-style).\n\n### Example: Import via npm\n\nInstall via npm:\n\n```sh\nnpm install @bentoproject/bento-date-display\n```\n\n```javascript\nimport {defineElement as defineBentoDateDisplay} from '@bentoproject/bento-date-display';\ndefineBentoDateDisplay();\n```\n\n### Include via `<script>`\n\n```html\n<script type=\"module\" src=\"https://cdn.ampproject.org/bento.mjs\" crossorigin=\"anonymous\"></script>\n<script nomodule src=\"https://cdn.ampproject.org/bento.js\" crossorigin=\"anonymous\"></script>\n<!-- Include bento-mustache.js to use mustache templates with this component -->\n<script async src=\"https://cdn.ampproject.org/v0/bento-mustache.js\"></script>\n<script type=\"module\" src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.mjs\" crossorigin=\"anonymous\"></script>\n<script nomodule src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.js\" crossorigin=\"anonymous\"></script>\n<link rel=\"stylesheet\" href=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.css\" crossorigin=\"anonymous\">\n```\n\n### Example\n\n```html\n<!DOCTYPE html>\n<html>\n  <head>\n    <script\n      type=\"module\"\n      async\n      src=\"https://cdn.ampproject.org/bento.mjs\"\n    ></script>\n    <script nomodule src=\"https://cdn.ampproject.org/bento.js\"></script>\n    <script async src=\"https://cdn.ampproject.org/v0/bento-mustache.js\"></script>\n    <script\n      type=\"module\"\n      async\n      src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.mjs\"\n    ></script>\n    <script\n      nomodule\n      async\n      src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.js\"\n    ></script>\n    <link\n      rel=\"stylesheet\"\n      type=\"text/css\"\n      href=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.css\"\n    />\n  </head>\n  <body>\n    <bento-date-display\n      datetime=\"2021-09-09T16:02:08.494Z\"\n      displayIn=\"utc\"\n      locale=\"en-GB\"\n    >\n      <template>\n        <div>ISO: {{iso}}; locale: {{localeString}}</div>\n      </template>\n    </bento-date-display>\n  </body>\n</html>\n```\n\n### Interactivity and API usage\n\nThe Bento Date Display component does not have an imperative API. However, the Bento Date Display Web Component will render a mustache-template, provided by the consumer in a `<template>` tag with `type=\"amp-mustache\"`. This template may interpolate date-related parameters. See the [Returned Time Parameters section](#returned-time-parameters) for a full list of all the available parameters.\n\n### Layout and style\n\nEach Bento component has a small CSS library you must include to guarantee proper loading without [content shifts](https://web.dev/cls/). Because of order-based specificity, you must manually ensure that stylesheets are included before any custom styles.\n\n```html\n<link rel=\"stylesheet\" type=\"text/css\" href=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.css\">\n```\n\nAlternatively, you may also make the light-weight pre-upgrade styles available inline:\n\n```html\n<style data-bento-boilerplate>\n  bento-date-display {\n    display: block;\n    overflow: hidden;\n    position: relative;\n  }\n</style>\n```\n\n### Attributes\n\n#### `datetime`\n\nThe `datetime` attribute specifies the date and time in a standard ISO 8601 date\nstring (e.g. 2017-08-02T15:05:05.000Z) or the string `now`. If set to `now`,\n`bento-date-display` will use the time the page loaded to render its template.\n\n#### `timestamp-ms`\n\nThe `timestamp-ms` attribute specifies the date and time using the number of\nmilliseconds since 1970-01-01T0:00:00.000Z\n\n#### `timestamp-seconds`\n\nThe `timestamp-seconds` attribute specifies the date and time using the number\nof seconds since 1970-01-01T0:00:00.000Z\n\n#### `locale` (optional)\n\nAn internationalization language string for each timer unit. The default value\nis `en` (for English). This attribute supports all values that are supported by\nthe user's browser.\n\n#### `display-in` (optional)\n\nIf set to the value `utc`, the `display-in` attribute will convert the given\ndate to UTC.\n\n#### `offset-seconds` (optional)\n\nThe `offset-seconds` attribute specifies an integer number of seconds to shift\nthe given date.\n\n#### `data-options-\\*` (optional)\n\nThe `data-options-*` supports all the options under [Intl.DateTimeFormat.options](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/DateTimeFormat#parameters)\nparameter that specifies the formatting style to use for `localeString` format.\nValid attributes include: `data-options-date-style`, `data-options-time-style`, etc.\n\nNote that if `display-in` attrubute is set to `utc`, the value of\n`data-options-time-zone` will automatically be converted to `UTC`.\n\n### Styling\n\nYou may use the `bento-date-display` element selector to style the Bento Date Display component freely.\n\n---\n\n## Preact/React Component\n\n### Import via npm\n\n```sh\nnpm install @bentoproject/date-display\n```\n\n```javascript\nimport React from 'react';\nimport {BentoDateDisplay} from '@bentoproject/date-display/react';\nimport '@bentoproject/date-display/styles.css';\n\nfunction App() {\n  return (\n    <BentoDateDisplay\n      datetime={dateTime}\n      displayIn={displayIn}\n      locale={locale}\n      render={(date) => (\n        <div>{`ISO: ${date.iso}; locale: ${date.localeString}`}</div>\n      )}\n    />\n  );\n}\n```\n\n### Interactivity and API usage\n\nThe Bento Date Display component does not have an imperative API. However, the Bento Date Display Preact/React component does accept a `render` prop that renders the consumer's template. This `render` prop should be a function which the Bento Date Display Preact/React component can use to render its template. The `render` callback will be provided a variety of date-related parameters for consumers to interpolate in the rendered template. See the [`render` prop section](#render) for more information.\n\n### Layout and style\n\nThe Bento Date Display Preact/React component allows consumers to render their own templates. These templates may use inline styles, `<style>` tags, Preact/React components that import their own stylesheets.\n\n### Props\n\n#### `datetime`\n\nRequired prop. Denotes the date and time as a Date, String, or Number. If String, must be a standard ISO 8601 date string (e.g. 2017-08-02T15:05:05.000Z) or the string `now`. If set to `now`, it will use the time the page loaded to render its template. If Number, must be a POSIX epoch value in milliseconds.\n\n#### `displayIn`\n\nOptional prop that can be either `\"utc\"` or `\"local\"` and defaults to `\"local\"`. This prop indicates what timezone to display the date in. If set to the value `\"utc\"`, the component will convert the given date to UTC.\n\n#### `locale`\n\nAn internationalization language string for each timer unit. The default value is `en` (for English). This prop supports all values that are supported by the user's browser.\n\n#### `localeOptions`\n\nThe `localeOptions` object supports all the options under [Intl.DateTimeFormat.options](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/DateTimeFormat#parameters) parameter that specifies the formatting style to use for `localeString` format.\n\nNote that if the `displayIn` prop is set to `utc`, the value of `localeOptions.timeZone` will automatically be converted to `UTC`.\n\n#### `render`\n\nOptional callback that should render a template. The callback will be provided an object with properties/values related to the date expressed in `datetime`.\n\nBy default, the Bento Date Display component will display the [`localeString` form of the Date](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/toLocaleString) for the given locale and localeOption. See the [Returned Time Parameters section](#returned-time-parameters) for more details on how each property will be displayed.\n\n```typescript\n(dateParams: DateParams) => JSXInternal.Element\ninterface DateParams {\n  day: number;\n  dayName: string;\n  dayNameShort: string;\n  dayPeriod: string;\n  dayTwoDigit: string;\n  hour: number;\n  hour12: number;\n  hour12TwoDigit: string;\n  hourTwoDigit: string;\n  iso: string;\n  localeString: string;\n  minute: number;\n  minuteTwoDigit: string;\n  month: number;\n  monthName: string;\n  monthNameShort: string;\n  monthTwoDigit: string;\n  second: number;\n  secondTwoDigit: string;\n  timeZoneName: string;\n  timeZoneNameShort: string;\n  year: number;\n  yearTwoDi: string;\n}\n```\n\n### Returned Time Parameters\n\nThis table lists the format you can specify in your Mustache template:\n\n| Format            | Meaning                                                       |\n| ----------------- | ------------------------------------------------------------- |\n| day               | 1, 2, ...12, 13, etc.                                         |\n| dayName           | string,                                                       |\n| dayNameShort      | string,                                                       |\n| dayPeriod         | string,                                                       |\n| dayTwoDigit       | 01, 02, 03, ..., 12, 13, etc.                                 |\n| hour              | 0, 1, 2, 3, ..., 12, 13, ..., 22, 23                          |\n| hour12            | 1, 2, 3, ..., 12, 1, 2, ..., 11, 12                           |\n| hour12TwoDigit    | 01, 02, ..., 12, 01, 02, ..., 11, 12                          |\n| hourTwoDigit      | 00, 01, 02, ..., 12, 13, ..., 22, 23                          |\n| iso               | A standard ISO8601 date string e.g. 2019-01-23T15:31:21.213Z, |\n| localeString      | A string with a language sensitive representation.            |\n| minute            | 0, 1, 2, ..., 58, 59                                          |\n| minuteTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| month             | 1, 2, 3, ..., 12                                              |\n| monthName         | Internationalized month name string.                          |\n| monthNameShort    | Internationalized abbreviated month name string.,             |\n| monthTwoDigit     | 01, 02, ..., 11, 12                                           |\n| second            | 0, 1, 2, ..., 58, 59                                          |\n| secondTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| timeZoneName      | Internationalized timezone, like `Pacific Daylight Time`      |\n| timeZoneNameShort | Internationalized timezone, abbreviated, like `PST`           |\n| year              | 0, 1, 2, ..., 1999, 2000, 2001, etc.                          |\n| yearTwoDigit      | 00, 01, 02, ..., 17, 18, 19, ..., 98, 99                      |\n","readmeFilename":"README.md","gitHead":"06d7a2baddf76737d7cde110a7b4bb9351feb38d","bugs":{"url":"https://github.com/ampproject/amphtml/issues"},"_id":"@bentoproject/date-display@1.2301301810.0","_nodeVersion":"18.13.0","_npmVersion":"8.19.3","dist":{"integrity":"sha512-Pu1jATfr2YNW+WMxa94m4EN2eOykBIhSGui3xbQ9JwMRx4j7fdhafoTYog6e754S5P5mOtSmh6qgllDX0bdIZw==","shasum":"7ba0308519e1e545f547c379b2e227aca81dcacf","tarball":"https://registry.npmjs.org/@bentoproject/date-display/-/date-display-1.2301301810.0.tgz","fileCount":29,"unpackedSize":677013,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQD9lMoofLu+ZxuQP3jcgzPwfueQJL7lXPk/K5M8CaLd5gIhANEbsvFo5ZcD35VFIP/l0l7ebvwVCt3a3UVfyMUv0OKx"}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJj2NCjACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqHNA/6AppAcnD5jQE6qgsVlZgA1GaKvKSDDID4WhAjIeovDtK7ovGQ\r\ng4mCvZAsVqqWq+PYKI7cOpnAg50YwLEebMpF0BdJykbl1hDf8EA7KCyJbywH\r\nxYrrUfFarKstuwTEYRwJNJArg1UNJzbB3Qpn8xPkIqL7dAeXCoD8EQ3ff7+L\r\nUMpUdrkSdzwherhZCD0PfQGSWHBLQa18fIhBocq6/QGQOih948UWPVoxmdE2\r\nDvr/3ZY4pvpd48OwNyz0CPv5oS5xSLYJykX6kOV1gPKTrm3Hjzhs7x0xNS2d\r\nXuMKf9kWlXYJUPGeixhUCM+mkOn9EBQJ074qwZ42s1SNvqRijMqCUyQVdyqN\r\nTEc25941CfklpKzTULppaW7E71ZMTqcUVyKnLhP7QkLwI8DsgIwFyfopZDiD\r\njr/GMFpF8KhSuJ/gGkC9Dgl0+EQ/crn2ljB5FmrnNxYPis32aFRwY6rnUPHs\r\nozQJG22l287fF2EErNN+6DbtaubmOWGObpn9GzzVEn6Zd9X+9JhKwsyugu1u\r\n9j2rh9cHh6n0tdgHcspek9GyDJq7JKdTcDAhe3NQf4IAN3MKmtZblUjEgFq+\r\n5Za+8sdhMSvrNFgpHp6iOz/FUVUW8pFqriLBkDZHOb/KQEc+YCQM5WpwbZz2\r\n4Srml6GUJqgKxDA4qLZkZxlgTdTWi+iZ4YM=\r\n=DODQ\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"bentoprojectbot","email":"bentobot@amp.dev"},"directories":{},"maintainers":[{"name":"bentoprojectbot","email":"bentobot@amp.dev"},{"name":"kristoferbaxter","email":"kbax@me.com"},{"name":"esth","email":"esther@amp.dev"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/date-display_1.2301301810.0_1675153571399_0.4848794068240374"},"_hasShrinkwrap":false},"1.2302012254.0":{"name":"@bentoproject/date-display","version":"1.2302012254.0","description":"Displays time data that you can render in your page.","author":{"name":"Bento Authors"},"license":"Apache-2.0","main":"./dist/web-component.js","module":"./dist/web-component.module.js","exports":{".":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./web-component":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./preact":{"import":"./dist/component-preact.module.js","require":"./dist/component-preact.js"},"./react":{"import":"./dist/component-react.module.js","require":"./dist/component-react.js"},"./web-component.css":"./dist/web-component.css"},"repository":{"type":"git","url":"git+https://github.com/ampproject/amphtml.git","directory":"extensions/amp-date-display/1.0"},"homepage":"https://github.com/ampproject/amphtml/tree/main/extensions/amp-date-display/1.0","peerDependencies":{"preact":"^10.2.1","react":"^17.0.0"},"dependencies":{"@bentoproject/core":"0.2302012254.0"},"readme":"# Bento Date Display\n\nDisplays time data that you can render in your page. By providing specific [attributes](#attributes) in the Bento Date Display tag, the Bento Date Display extension returns a list of time parameters, which you can pass to [an amp-mustache template](../../amp-mustache/amp-mustache.md) for rendering. Refer to the [list below for each returned time parameter](#returned-time-parameters).\n\n## Web Component\n\nYou must include each Bento component's required CSS library to guarantee proper loading and before adding custom styles. Or use the light-weight pre-upgrade styles available inline. See [Layout and style](#layout-and-style).\n\n### Example: Import via npm\n\nInstall via npm:\n\n```sh\nnpm install @bentoproject/bento-date-display\n```\n\n```javascript\nimport {defineElement as defineBentoDateDisplay} from '@bentoproject/bento-date-display';\ndefineBentoDateDisplay();\n```\n\n### Include via `<script>`\n\n```html\n<script type=\"module\" src=\"https://cdn.ampproject.org/bento.mjs\" crossorigin=\"anonymous\"></script>\n<script nomodule src=\"https://cdn.ampproject.org/bento.js\" crossorigin=\"anonymous\"></script>\n<!-- Include bento-mustache.js to use mustache templates with this component -->\n<script async src=\"https://cdn.ampproject.org/v0/bento-mustache.js\"></script>\n<script type=\"module\" src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.mjs\" crossorigin=\"anonymous\"></script>\n<script nomodule src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.js\" crossorigin=\"anonymous\"></script>\n<link rel=\"stylesheet\" href=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.css\" crossorigin=\"anonymous\">\n```\n\n### Example\n\n```html\n<!DOCTYPE html>\n<html>\n  <head>\n    <script\n      type=\"module\"\n      async\n      src=\"https://cdn.ampproject.org/bento.mjs\"\n    ></script>\n    <script nomodule src=\"https://cdn.ampproject.org/bento.js\"></script>\n    <script async src=\"https://cdn.ampproject.org/v0/bento-mustache.js\"></script>\n    <script\n      type=\"module\"\n      async\n      src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.mjs\"\n    ></script>\n    <script\n      nomodule\n      async\n      src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.js\"\n    ></script>\n    <link\n      rel=\"stylesheet\"\n      type=\"text/css\"\n      href=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.css\"\n    />\n  </head>\n  <body>\n    <bento-date-display\n      datetime=\"2021-09-09T16:02:08.494Z\"\n      displayIn=\"utc\"\n      locale=\"en-GB\"\n    >\n      <template>\n        <div>ISO: {{iso}}; locale: {{localeString}}</div>\n      </template>\n    </bento-date-display>\n  </body>\n</html>\n```\n\n### Interactivity and API usage\n\nThe Bento Date Display component does not have an imperative API. However, the Bento Date Display Web Component will render a mustache-template, provided by the consumer in a `<template>` tag with `type=\"amp-mustache\"`. This template may interpolate date-related parameters. See the [Returned Time Parameters section](#returned-time-parameters) for a full list of all the available parameters.\n\n### Layout and style\n\nEach Bento component has a small CSS library you must include to guarantee proper loading without [content shifts](https://web.dev/cls/). Because of order-based specificity, you must manually ensure that stylesheets are included before any custom styles.\n\n```html\n<link rel=\"stylesheet\" type=\"text/css\" href=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.css\">\n```\n\nAlternatively, you may also make the light-weight pre-upgrade styles available inline:\n\n```html\n<style data-bento-boilerplate>\n  bento-date-display {\n    display: block;\n    overflow: hidden;\n    position: relative;\n  }\n</style>\n```\n\n### Attributes\n\n#### `datetime`\n\nThe `datetime` attribute specifies the date and time in a standard ISO 8601 date\nstring (e.g. 2017-08-02T15:05:05.000Z) or the string `now`. If set to `now`,\n`bento-date-display` will use the time the page loaded to render its template.\n\n#### `timestamp-ms`\n\nThe `timestamp-ms` attribute specifies the date and time using the number of\nmilliseconds since 1970-01-01T0:00:00.000Z\n\n#### `timestamp-seconds`\n\nThe `timestamp-seconds` attribute specifies the date and time using the number\nof seconds since 1970-01-01T0:00:00.000Z\n\n#### `locale` (optional)\n\nAn internationalization language string for each timer unit. The default value\nis `en` (for English). This attribute supports all values that are supported by\nthe user's browser.\n\n#### `display-in` (optional)\n\nIf set to the value `utc`, the `display-in` attribute will convert the given\ndate to UTC.\n\n#### `offset-seconds` (optional)\n\nThe `offset-seconds` attribute specifies an integer number of seconds to shift\nthe given date.\n\n#### `data-options-\\*` (optional)\n\nThe `data-options-*` supports all the options under [Intl.DateTimeFormat.options](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/DateTimeFormat#parameters)\nparameter that specifies the formatting style to use for `localeString` format.\nValid attributes include: `data-options-date-style`, `data-options-time-style`, etc.\n\nNote that if `display-in` attrubute is set to `utc`, the value of\n`data-options-time-zone` will automatically be converted to `UTC`.\n\n### Styling\n\nYou may use the `bento-date-display` element selector to style the Bento Date Display component freely.\n\n---\n\n## Preact/React Component\n\n### Import via npm\n\n```sh\nnpm install @bentoproject/date-display\n```\n\n```javascript\nimport React from 'react';\nimport {BentoDateDisplay} from '@bentoproject/date-display/react';\nimport '@bentoproject/date-display/styles.css';\n\nfunction App() {\n  return (\n    <BentoDateDisplay\n      datetime={dateTime}\n      displayIn={displayIn}\n      locale={locale}\n      render={(date) => (\n        <div>{`ISO: ${date.iso}; locale: ${date.localeString}`}</div>\n      )}\n    />\n  );\n}\n```\n\n### Interactivity and API usage\n\nThe Bento Date Display component does not have an imperative API. However, the Bento Date Display Preact/React component does accept a `render` prop that renders the consumer's template. This `render` prop should be a function which the Bento Date Display Preact/React component can use to render its template. The `render` callback will be provided a variety of date-related parameters for consumers to interpolate in the rendered template. See the [`render` prop section](#render) for more information.\n\n### Layout and style\n\nThe Bento Date Display Preact/React component allows consumers to render their own templates. These templates may use inline styles, `<style>` tags, Preact/React components that import their own stylesheets.\n\n### Props\n\n#### `datetime`\n\nRequired prop. Denotes the date and time as a Date, String, or Number. If String, must be a standard ISO 8601 date string (e.g. 2017-08-02T15:05:05.000Z) or the string `now`. If set to `now`, it will use the time the page loaded to render its template. If Number, must be a POSIX epoch value in milliseconds.\n\n#### `displayIn`\n\nOptional prop that can be either `\"utc\"` or `\"local\"` and defaults to `\"local\"`. This prop indicates what timezone to display the date in. If set to the value `\"utc\"`, the component will convert the given date to UTC.\n\n#### `locale`\n\nAn internationalization language string for each timer unit. The default value is `en` (for English). This prop supports all values that are supported by the user's browser.\n\n#### `localeOptions`\n\nThe `localeOptions` object supports all the options under [Intl.DateTimeFormat.options](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/DateTimeFormat#parameters) parameter that specifies the formatting style to use for `localeString` format.\n\nNote that if the `displayIn` prop is set to `utc`, the value of `localeOptions.timeZone` will automatically be converted to `UTC`.\n\n#### `render`\n\nOptional callback that should render a template. The callback will be provided an object with properties/values related to the date expressed in `datetime`.\n\nBy default, the Bento Date Display component will display the [`localeString` form of the Date](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/toLocaleString) for the given locale and localeOption. See the [Returned Time Parameters section](#returned-time-parameters) for more details on how each property will be displayed.\n\n```typescript\n(dateParams: DateParams) => JSXInternal.Element\ninterface DateParams {\n  day: number;\n  dayName: string;\n  dayNameShort: string;\n  dayPeriod: string;\n  dayTwoDigit: string;\n  hour: number;\n  hour12: number;\n  hour12TwoDigit: string;\n  hourTwoDigit: string;\n  iso: string;\n  localeString: string;\n  minute: number;\n  minuteTwoDigit: string;\n  month: number;\n  monthName: string;\n  monthNameShort: string;\n  monthTwoDigit: string;\n  second: number;\n  secondTwoDigit: string;\n  timeZoneName: string;\n  timeZoneNameShort: string;\n  year: number;\n  yearTwoDi: string;\n}\n```\n\n### Returned Time Parameters\n\nThis table lists the format you can specify in your Mustache template:\n\n| Format            | Meaning                                                       |\n| ----------------- | ------------------------------------------------------------- |\n| day               | 1, 2, ...12, 13, etc.                                         |\n| dayName           | string,                                                       |\n| dayNameShort      | string,                                                       |\n| dayPeriod         | string,                                                       |\n| dayTwoDigit       | 01, 02, 03, ..., 12, 13, etc.                                 |\n| hour              | 0, 1, 2, 3, ..., 12, 13, ..., 22, 23                          |\n| hour12            | 1, 2, 3, ..., 12, 1, 2, ..., 11, 12                           |\n| hour12TwoDigit    | 01, 02, ..., 12, 01, 02, ..., 11, 12                          |\n| hourTwoDigit      | 00, 01, 02, ..., 12, 13, ..., 22, 23                          |\n| iso               | A standard ISO8601 date string e.g. 2019-01-23T15:31:21.213Z, |\n| localeString      | A string with a language sensitive representation.            |\n| minute            | 0, 1, 2, ..., 58, 59                                          |\n| minuteTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| month             | 1, 2, 3, ..., 12                                              |\n| monthName         | Internationalized month name string.                          |\n| monthNameShort    | Internationalized abbreviated month name string.,             |\n| monthTwoDigit     | 01, 02, ..., 11, 12                                           |\n| second            | 0, 1, 2, ..., 58, 59                                          |\n| secondTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| timeZoneName      | Internationalized timezone, like `Pacific Daylight Time`      |\n| timeZoneNameShort | Internationalized timezone, abbreviated, like `PST`           |\n| year              | 0, 1, 2, ..., 1999, 2000, 2001, etc.                          |\n| yearTwoDigit      | 00, 01, 02, ..., 17, 18, 19, ..., 98, 99                      |\n","readmeFilename":"README.md","gitHead":"e4c14ac075b71415995f07a6bcc3ca93a8af5cc0","bugs":{"url":"https://github.com/ampproject/amphtml/issues"},"_id":"@bentoproject/date-display@1.2302012254.0","_nodeVersion":"18.13.0","_npmVersion":"8.19.3","dist":{"integrity":"sha512-d1QYRIkMAmqYCXGSCTn3a00uTAW7AkEvBFaEjRT9XXtcFeKJuuQK7OnDVZ6VCVPy7TqiFLjxWF7+HiQR1dzUeQ==","shasum":"5866426df6e978e44d2d18fe92e92a5cf88c79e9","tarball":"https://registry.npmjs.org/@bentoproject/date-display/-/date-display-1.2302012254.0.tgz","fileCount":29,"unpackedSize":677013,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIDD/LCfgonU3mhTd4xS/Zhsc812+tqz8wHs6mi/qWbm/AiEAgxgNvWZyxLTfdrclaaRJ9cqSo0ZLRrijpbzkU7kL46o="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJj23M3ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmotvg//aeMdiAOKaFHO/2Q2NdK8ahWwcWZJYQ6/5UvvKoYUi+9poFNe\r\nkBcnz3K3KNryUBqALoTR2bl0hf4z5aTQEfpi/ezBmBdaOCJq6e/kyGxYuy71\r\nWx2VfcdizAPi1xc3MUVnUpgajeIbRe7nsoQwhbLW1AWtzFB302zU/DE57L90\r\ngchfEqeO1kY/KvVqEt3MFESMX7TDvt9t7GPn/2zsTjLvy1uU3KyU3Mjp14BO\r\n2IeugzI46bE3bSjS2Uv31NnfUUJDT6n2e4LaFecYNpvn5ZMoR4p+CF61AMbv\r\nzICUDyjf2x2p5zkYjEpGAf8ymsCRPwTi2WZqFhBG+IFNjMPHrYrz9G5+d5TR\r\n4niRoYBeT5N53l7qcxjr8c8I8DnOFNbYJVZNOF0CJHU32CiVNdoI6Alw3KDF\r\nuKyfEtObMnfDN/Hb18ym+cRBX8zi+gMm40OzM1Al53USJs+1PvMtrHkOIGKB\r\nbyTTF6Bs72xAQkrwpu4P26PCG4hN+7cV6LpumEh61k3cq5RDHKSJoFe35maX\r\ne6JUz7+VpPVmYavSKIxnxw/mmGb54/HB7EifTyGv85yvHJUNlLeJUE63lFfY\r\nqjIdyzQkTBRyQbBjFH+QeACifJQXdsvc6nisyAGMSTZybrGYS0lAJriughiP\r\nc/9ni2ZvrYXq+ygwmrLYpf8UZvjTk6EpdV0=\r\n=c3DT\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"bentoprojectbot","email":"bentobot@amp.dev"},"directories":{},"maintainers":[{"name":"bentoprojectbot","email":"bentobot@amp.dev"},{"name":"kristoferbaxter","email":"kbax@me.com"},{"name":"esth","email":"esther@amp.dev"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/date-display_1.2302012254.0_1675326263160_0.7815030345881646"},"_hasShrinkwrap":false},"1.2302021743.0":{"name":"@bentoproject/date-display","version":"1.2302021743.0","description":"Displays time data that you can render in your page.","author":{"name":"Bento Authors"},"license":"Apache-2.0","main":"./dist/web-component.js","module":"./dist/web-component.module.js","exports":{".":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./web-component":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./preact":{"import":"./dist/component-preact.module.js","require":"./dist/component-preact.js"},"./react":{"import":"./dist/component-react.module.js","require":"./dist/component-react.js"},"./web-component.css":"./dist/web-component.css"},"repository":{"type":"git","url":"git+https://github.com/ampproject/amphtml.git","directory":"extensions/amp-date-display/1.0"},"homepage":"https://github.com/ampproject/amphtml/tree/main/extensions/amp-date-display/1.0","peerDependencies":{"preact":"^10.2.1","react":"^17.0.0"},"dependencies":{"@bentoproject/core":"0.2302021743.0"},"readme":"# Bento Date Display\n\nDisplays time data that you can render in your page. By providing specific [attributes](#attributes) in the Bento Date Display tag, the Bento Date Display extension returns a list of time parameters, which you can pass to [an amp-mustache template](../../amp-mustache/amp-mustache.md) for rendering. Refer to the [list below for each returned time parameter](#returned-time-parameters).\n\n## Web Component\n\nYou must include each Bento component's required CSS library to guarantee proper loading and before adding custom styles. Or use the light-weight pre-upgrade styles available inline. See [Layout and style](#layout-and-style).\n\n### Example: Import via npm\n\nInstall via npm:\n\n```sh\nnpm install @bentoproject/bento-date-display\n```\n\n```javascript\nimport {defineElement as defineBentoDateDisplay} from '@bentoproject/bento-date-display';\ndefineBentoDateDisplay();\n```\n\n### Include via `<script>`\n\n```html\n<script type=\"module\" src=\"https://cdn.ampproject.org/bento.mjs\" crossorigin=\"anonymous\"></script>\n<script nomodule src=\"https://cdn.ampproject.org/bento.js\" crossorigin=\"anonymous\"></script>\n<!-- Include bento-mustache.js to use mustache templates with this component -->\n<script async src=\"https://cdn.ampproject.org/v0/bento-mustache.js\"></script>\n<script type=\"module\" src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.mjs\" crossorigin=\"anonymous\"></script>\n<script nomodule src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.js\" crossorigin=\"anonymous\"></script>\n<link rel=\"stylesheet\" href=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.css\" crossorigin=\"anonymous\">\n```\n\n### Example\n\n```html\n<!DOCTYPE html>\n<html>\n  <head>\n    <script\n      type=\"module\"\n      async\n      src=\"https://cdn.ampproject.org/bento.mjs\"\n    ></script>\n    <script nomodule src=\"https://cdn.ampproject.org/bento.js\"></script>\n    <script async src=\"https://cdn.ampproject.org/v0/bento-mustache.js\"></script>\n    <script\n      type=\"module\"\n      async\n      src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.mjs\"\n    ></script>\n    <script\n      nomodule\n      async\n      src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.js\"\n    ></script>\n    <link\n      rel=\"stylesheet\"\n      type=\"text/css\"\n      href=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.css\"\n    />\n  </head>\n  <body>\n    <bento-date-display\n      datetime=\"2021-09-09T16:02:08.494Z\"\n      displayIn=\"utc\"\n      locale=\"en-GB\"\n    >\n      <template>\n        <div>ISO: {{iso}}; locale: {{localeString}}</div>\n      </template>\n    </bento-date-display>\n  </body>\n</html>\n```\n\n### Interactivity and API usage\n\nThe Bento Date Display component does not have an imperative API. However, the Bento Date Display Web Component will render a mustache-template, provided by the consumer in a `<template>` tag with `type=\"amp-mustache\"`. This template may interpolate date-related parameters. See the [Returned Time Parameters section](#returned-time-parameters) for a full list of all the available parameters.\n\n### Layout and style\n\nEach Bento component has a small CSS library you must include to guarantee proper loading without [content shifts](https://web.dev/cls/). Because of order-based specificity, you must manually ensure that stylesheets are included before any custom styles.\n\n```html\n<link rel=\"stylesheet\" type=\"text/css\" href=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.css\">\n```\n\nAlternatively, you may also make the light-weight pre-upgrade styles available inline:\n\n```html\n<style data-bento-boilerplate>\n  bento-date-display {\n    display: block;\n    overflow: hidden;\n    position: relative;\n  }\n</style>\n```\n\n### Attributes\n\n#### `datetime`\n\nThe `datetime` attribute specifies the date and time in a standard ISO 8601 date\nstring (e.g. 2017-08-02T15:05:05.000Z) or the string `now`. If set to `now`,\n`bento-date-display` will use the time the page loaded to render its template.\n\n#### `timestamp-ms`\n\nThe `timestamp-ms` attribute specifies the date and time using the number of\nmilliseconds since 1970-01-01T0:00:00.000Z\n\n#### `timestamp-seconds`\n\nThe `timestamp-seconds` attribute specifies the date and time using the number\nof seconds since 1970-01-01T0:00:00.000Z\n\n#### `locale` (optional)\n\nAn internationalization language string for each timer unit. The default value\nis `en` (for English). This attribute supports all values that are supported by\nthe user's browser.\n\n#### `display-in` (optional)\n\nIf set to the value `utc`, the `display-in` attribute will convert the given\ndate to UTC.\n\n#### `offset-seconds` (optional)\n\nThe `offset-seconds` attribute specifies an integer number of seconds to shift\nthe given date.\n\n#### `data-options-\\*` (optional)\n\nThe `data-options-*` supports all the options under [Intl.DateTimeFormat.options](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/DateTimeFormat#parameters)\nparameter that specifies the formatting style to use for `localeString` format.\nValid attributes include: `data-options-date-style`, `data-options-time-style`, etc.\n\nNote that if `display-in` attrubute is set to `utc`, the value of\n`data-options-time-zone` will automatically be converted to `UTC`.\n\n### Styling\n\nYou may use the `bento-date-display` element selector to style the Bento Date Display component freely.\n\n---\n\n## Preact/React Component\n\n### Import via npm\n\n```sh\nnpm install @bentoproject/date-display\n```\n\n```javascript\nimport React from 'react';\nimport {BentoDateDisplay} from '@bentoproject/date-display/react';\nimport '@bentoproject/date-display/styles.css';\n\nfunction App() {\n  return (\n    <BentoDateDisplay\n      datetime={dateTime}\n      displayIn={displayIn}\n      locale={locale}\n      render={(date) => (\n        <div>{`ISO: ${date.iso}; locale: ${date.localeString}`}</div>\n      )}\n    />\n  );\n}\n```\n\n### Interactivity and API usage\n\nThe Bento Date Display component does not have an imperative API. However, the Bento Date Display Preact/React component does accept a `render` prop that renders the consumer's template. This `render` prop should be a function which the Bento Date Display Preact/React component can use to render its template. The `render` callback will be provided a variety of date-related parameters for consumers to interpolate in the rendered template. See the [`render` prop section](#render) for more information.\n\n### Layout and style\n\nThe Bento Date Display Preact/React component allows consumers to render their own templates. These templates may use inline styles, `<style>` tags, Preact/React components that import their own stylesheets.\n\n### Props\n\n#### `datetime`\n\nRequired prop. Denotes the date and time as a Date, String, or Number. If String, must be a standard ISO 8601 date string (e.g. 2017-08-02T15:05:05.000Z) or the string `now`. If set to `now`, it will use the time the page loaded to render its template. If Number, must be a POSIX epoch value in milliseconds.\n\n#### `displayIn`\n\nOptional prop that can be either `\"utc\"` or `\"local\"` and defaults to `\"local\"`. This prop indicates what timezone to display the date in. If set to the value `\"utc\"`, the component will convert the given date to UTC.\n\n#### `locale`\n\nAn internationalization language string for each timer unit. The default value is `en` (for English). This prop supports all values that are supported by the user's browser.\n\n#### `localeOptions`\n\nThe `localeOptions` object supports all the options under [Intl.DateTimeFormat.options](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/DateTimeFormat#parameters) parameter that specifies the formatting style to use for `localeString` format.\n\nNote that if the `displayIn` prop is set to `utc`, the value of `localeOptions.timeZone` will automatically be converted to `UTC`.\n\n#### `render`\n\nOptional callback that should render a template. The callback will be provided an object with properties/values related to the date expressed in `datetime`.\n\nBy default, the Bento Date Display component will display the [`localeString` form of the Date](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/toLocaleString) for the given locale and localeOption. See the [Returned Time Parameters section](#returned-time-parameters) for more details on how each property will be displayed.\n\n```typescript\n(dateParams: DateParams) => JSXInternal.Element\ninterface DateParams {\n  day: number;\n  dayName: string;\n  dayNameShort: string;\n  dayPeriod: string;\n  dayTwoDigit: string;\n  hour: number;\n  hour12: number;\n  hour12TwoDigit: string;\n  hourTwoDigit: string;\n  iso: string;\n  localeString: string;\n  minute: number;\n  minuteTwoDigit: string;\n  month: number;\n  monthName: string;\n  monthNameShort: string;\n  monthTwoDigit: string;\n  second: number;\n  secondTwoDigit: string;\n  timeZoneName: string;\n  timeZoneNameShort: string;\n  year: number;\n  yearTwoDi: string;\n}\n```\n\n### Returned Time Parameters\n\nThis table lists the format you can specify in your Mustache template:\n\n| Format            | Meaning                                                       |\n| ----------------- | ------------------------------------------------------------- |\n| day               | 1, 2, ...12, 13, etc.                                         |\n| dayName           | string,                                                       |\n| dayNameShort      | string,                                                       |\n| dayPeriod         | string,                                                       |\n| dayTwoDigit       | 01, 02, 03, ..., 12, 13, etc.                                 |\n| hour              | 0, 1, 2, 3, ..., 12, 13, ..., 22, 23                          |\n| hour12            | 1, 2, 3, ..., 12, 1, 2, ..., 11, 12                           |\n| hour12TwoDigit    | 01, 02, ..., 12, 01, 02, ..., 11, 12                          |\n| hourTwoDigit      | 00, 01, 02, ..., 12, 13, ..., 22, 23                          |\n| iso               | A standard ISO8601 date string e.g. 2019-01-23T15:31:21.213Z, |\n| localeString      | A string with a language sensitive representation.            |\n| minute            | 0, 1, 2, ..., 58, 59                                          |\n| minuteTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| month             | 1, 2, 3, ..., 12                                              |\n| monthName         | Internationalized month name string.                          |\n| monthNameShort    | Internationalized abbreviated month name string.,             |\n| monthTwoDigit     | 01, 02, ..., 11, 12                                           |\n| second            | 0, 1, 2, ..., 58, 59                                          |\n| secondTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| timeZoneName      | Internationalized timezone, like `Pacific Daylight Time`      |\n| timeZoneNameShort | Internationalized timezone, abbreviated, like `PST`           |\n| year              | 0, 1, 2, ..., 1999, 2000, 2001, etc.                          |\n| yearTwoDigit      | 00, 01, 02, ..., 17, 18, 19, ..., 98, 99                      |\n","readmeFilename":"README.md","gitHead":"a27cd72c15b628053806c94efc4c96730603dbd5","bugs":{"url":"https://github.com/ampproject/amphtml/issues"},"_id":"@bentoproject/date-display@1.2302021743.0","_nodeVersion":"18.13.0","_npmVersion":"8.19.3","dist":{"integrity":"sha512-kdj1fdA1mHN6KLDtv/OdouGmFWniLCEF2tPVIaJvoBW399+FbjYmCWXTgWv6NdBF5L0BKzjh8DUr7b+rMiOGng==","shasum":"98e1ced09295cd7b675ce3c70347e4f962b2cae0","tarball":"https://registry.npmjs.org/@bentoproject/date-display/-/date-display-1.2302021743.0.tgz","fileCount":29,"unpackedSize":677013,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIC0hYPdJeLuksQ/aAFewZrRaGHe1MDLFkOuxhFke8ZWmAiEAu0JZBZfj/3o4z+OqVHU77uqBlpMA/vmRuQSeNo/ujKY="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJj3MUOACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqKsw/8CJ+KFVPLtpCjEdqk9DQnTNse/XmEifZ8jF+UHjc6iYT5VguX\r\n05SdqjYxOqUoJ1PWCf/1YIrYR8dhJJzkK48N+3UM4m8tEYcgSlZa89IKk9qi\r\n1xBTZsVJKfJDdiK/LBssPUGQRxTQl0XP8oOUfZKufgXcYru293TL+/dMqVJl\r\ntOK0mXE1QaTqqcPmt6Yo8f15bBqMQVrd+en4NWctbtF+vlhBh8yY+EX+Cr+J\r\nCjJ3aW46wtPLhAeLN1Dh5XCV5irPGQTOfiRUKAZFBub9+KYHLOrWdmms2hxr\r\nApdhT4PfGcUOsvEFHFz8BTFuD9crkFCoiQgP6DPqlRMoWA8cVdRy+9MhKuUx\r\niMLWu5y1ORQOMuPgndEyvLc+ZiUIWioV4PJqDC7BvugXVJHjpkkCXeYs1HDu\r\n1lYTn3OmoUv4ruNRK1J5SlKsF8Wx9y9Y2oohsnXK4NXt9U5E1u1UzllPECA5\r\nxKelKTokQPChdMKu+tlYIsTL6WPd+xNu/4dF7FK6xvZyteKQrr/iiO6psDFv\r\nxytdwyF7met5xJ8e3IYG8rTQvTR3ykWGkdKneEYT9ITWU0tslz+IwIVqAX9g\r\n4PJle0JOINL/TW/3nY5ZwOgNuHVsP9MEe2cNInmShILALD8ff83Ap9j+SoeN\r\n1MrPe6v5skeaBxVkr770pspDfqo3tKPGV50=\r\n=+Za5\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"bentoprojectbot","email":"bentobot@amp.dev"},"directories":{},"maintainers":[{"name":"bentoprojectbot","email":"bentobot@amp.dev"},{"name":"kristoferbaxter","email":"kbax@me.com"},{"name":"esth","email":"esther@amp.dev"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/date-display_1.2302021743.0_1675412749830_0.9946066546502892"},"_hasShrinkwrap":false},"1.2302031721.0":{"name":"@bentoproject/date-display","version":"1.2302031721.0","description":"Displays time data that you can render in your page.","author":{"name":"Bento Authors"},"license":"Apache-2.0","main":"./dist/web-component.js","module":"./dist/web-component.module.js","exports":{".":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./web-component":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./preact":{"import":"./dist/component-preact.module.js","require":"./dist/component-preact.js"},"./react":{"import":"./dist/component-react.module.js","require":"./dist/component-react.js"},"./web-component.css":"./dist/web-component.css"},"repository":{"type":"git","url":"git+https://github.com/ampproject/amphtml.git","directory":"extensions/amp-date-display/1.0"},"homepage":"https://github.com/ampproject/amphtml/tree/main/extensions/amp-date-display/1.0","peerDependencies":{"preact":"^10.2.1","react":"^17.0.0"},"dependencies":{"@bentoproject/core":"0.2302031721.0"},"gitHead":"f8cbfb0c4e4db6b8dea923c0afdf75aa7888e4b8","bugs":{"url":"https://github.com/ampproject/amphtml/issues"},"_id":"@bentoproject/date-display@1.2302031721.0","_nodeVersion":"18.13.0","_npmVersion":"8.19.3","dist":{"integrity":"sha512-UvT3F+folRHha8vFJWixNKcjXBrWzLoAyQov9zozurM3hVGGxqc5Z2TUe/NEfpjX5b+LWIrvKL/G4byfDsUi9A==","shasum":"1f506e315358b9cbac6d44910dc7942166294e93","tarball":"https://registry.npmjs.org/@bentoproject/date-display/-/date-display-1.2302031721.0.tgz","fileCount":29,"unpackedSize":677013,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIEK3HzPfU5mWlp3+vbxo07mb++lm6P/CkjBtTzsuYMlHAiEAgU2XdL6gouWVb8Kc/n1T9OMRFhvU7TcI1326K/BnX4w="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJj3hYQACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmo+9hAAhyNrVQqFig0VJH0wfNYbQhb+N4PVHVpXnLLEM6DQvXF8qPvI\r\nRhZupimIzfNf5AiKXkBkKtAYEhStyH63EKbwDPx7xNgc3j36hUa9h7RLFwUq\r\nfnKggPolV1o7lUCThIUNP2K0Iz56vlQ1mLud79MNt5bDAHHThc1jidH0f6sg\r\nwVitGbizchcnLTQSulAabMZ2HM4qgY1h+KhkmT2BV2fOzVxj2PGnJUozWFLw\r\nU1oAwKfKWiEa1EIMpeY0RuONhsnL5pYar+1ZM5SNXwo7oeMCY9LqFOJVnvRf\r\nqr55/JQVccLrtepeciTjNrrMWwBzziaeMNlc2KgitTvwQyjSr1he7Zy1WjSF\r\ndw6Jqrf7G5+L8MHneBe2OE7p+xokIYSlePMshptlAZB+XFTsKV+NV8n1++Ks\r\nm2ixKpwqps6XLBw238tzWt9CWVmTWZ5XrnCU+USRDtg1AfTN7OJNK5XzOKEN\r\nNVAfOqxRwST3T0v6H4vAi05u0zMHuBzabtYO8s/djjz+t3IVMWaTXjr8Ymtm\r\nI1eIppjNYqeuCdFOpwIF8kT36nGwuommdjHD+eouxLfRHCiq73jASXXTF8zx\r\nXF8c5s9OyNSgSwcI39hgL5LFW4x0Fb7iVOIuP9PriD/kOftQ34QvjOtOtxvX\r\nj4BKBHQBhrNBNk4QS94ZvDW1m4V7vtERrFA=\r\n=4pc7\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"bentoprojectbot","email":"bentobot@amp.dev"},"directories":{},"maintainers":[{"name":"bentoprojectbot","email":"bentobot@amp.dev"},{"name":"kristoferbaxter","email":"kbax@me.com"},{"name":"esth","email":"esther@amp.dev"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/date-display_1.2302031721.0_1675499024150_0.854505422583886"},"_hasShrinkwrap":false},"1.2302171719.0":{"name":"@bentoproject/date-display","version":"1.2302171719.0","description":"Displays time data that you can render in your page.","author":{"name":"Bento Authors"},"license":"Apache-2.0","main":"./dist/web-component.js","module":"./dist/web-component.module.js","exports":{".":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./web-component":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./preact":{"import":"./dist/component-preact.module.js","require":"./dist/component-preact.js"},"./react":{"import":"./dist/component-react.module.js","require":"./dist/component-react.js"},"./web-component.css":"./dist/web-component.css"},"repository":{"type":"git","url":"git+https://github.com/ampproject/amphtml.git","directory":"extensions/amp-date-display/1.0"},"homepage":"https://github.com/ampproject/amphtml/tree/main/extensions/amp-date-display/1.0","peerDependencies":{"preact":"^10.2.1","react":"^17.0.0"},"dependencies":{"@bentoproject/core":"0.2302171719.0"},"readme":"# Bento Date Display\n\nDisplays time data that you can render in your page. By providing specific [attributes](#attributes) in the Bento Date Display tag, the Bento Date Display extension returns a list of time parameters, which you can pass to [an amp-mustache template](../../amp-mustache/amp-mustache.md) for rendering. Refer to the [list below for each returned time parameter](#returned-time-parameters).\n\n## Web Component\n\nYou must include each Bento component's required CSS library to guarantee proper loading and before adding custom styles. Or use the light-weight pre-upgrade styles available inline. See [Layout and style](#layout-and-style).\n\n### Example: Import via npm\n\nInstall via npm:\n\n```sh\nnpm install @bentoproject/bento-date-display\n```\n\n```javascript\nimport {defineElement as defineBentoDateDisplay} from '@bentoproject/bento-date-display';\ndefineBentoDateDisplay();\n```\n\n### Include via `<script>`\n\n```html\n<script type=\"module\" src=\"https://cdn.ampproject.org/bento.mjs\" crossorigin=\"anonymous\"></script>\n<script nomodule src=\"https://cdn.ampproject.org/bento.js\" crossorigin=\"anonymous\"></script>\n<!-- Include bento-mustache.js to use mustache templates with this component -->\n<script async src=\"https://cdn.ampproject.org/v0/bento-mustache.js\"></script>\n<script type=\"module\" src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.mjs\" crossorigin=\"anonymous\"></script>\n<script nomodule src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.js\" crossorigin=\"anonymous\"></script>\n<link rel=\"stylesheet\" href=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.css\" crossorigin=\"anonymous\">\n```\n\n### Example\n\n```html\n<!DOCTYPE html>\n<html>\n  <head>\n    <script\n      type=\"module\"\n      async\n      src=\"https://cdn.ampproject.org/bento.mjs\"\n    ></script>\n    <script nomodule src=\"https://cdn.ampproject.org/bento.js\"></script>\n    <script async src=\"https://cdn.ampproject.org/v0/bento-mustache.js\"></script>\n    <script\n      type=\"module\"\n      async\n      src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.mjs\"\n    ></script>\n    <script\n      nomodule\n      async\n      src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.js\"\n    ></script>\n    <link\n      rel=\"stylesheet\"\n      type=\"text/css\"\n      href=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.css\"\n    />\n  </head>\n  <body>\n    <bento-date-display\n      datetime=\"2021-09-09T16:02:08.494Z\"\n      displayIn=\"utc\"\n      locale=\"en-GB\"\n    >\n      <template>\n        <div>ISO: {{iso}}; locale: {{localeString}}</div>\n      </template>\n    </bento-date-display>\n  </body>\n</html>\n```\n\n### Interactivity and API usage\n\nThe Bento Date Display component does not have an imperative API. However, the Bento Date Display Web Component will render a mustache-template, provided by the consumer in a `<template>` tag with `type=\"amp-mustache\"`. This template may interpolate date-related parameters. See the [Returned Time Parameters section](#returned-time-parameters) for a full list of all the available parameters.\n\n### Layout and style\n\nEach Bento component has a small CSS library you must include to guarantee proper loading without [content shifts](https://web.dev/cls/). Because of order-based specificity, you must manually ensure that stylesheets are included before any custom styles.\n\n```html\n<link rel=\"stylesheet\" type=\"text/css\" href=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.css\">\n```\n\nAlternatively, you may also make the light-weight pre-upgrade styles available inline:\n\n```html\n<style data-bento-boilerplate>\n  bento-date-display {\n    display: block;\n    overflow: hidden;\n    position: relative;\n  }\n</style>\n```\n\n### Attributes\n\n#### `datetime`\n\nThe `datetime` attribute specifies the date and time in a standard ISO 8601 date\nstring (e.g. 2017-08-02T15:05:05.000Z) or the string `now`. If set to `now`,\n`bento-date-display` will use the time the page loaded to render its template.\n\n#### `timestamp-ms`\n\nThe `timestamp-ms` attribute specifies the date and time using the number of\nmilliseconds since 1970-01-01T0:00:00.000Z\n\n#### `timestamp-seconds`\n\nThe `timestamp-seconds` attribute specifies the date and time using the number\nof seconds since 1970-01-01T0:00:00.000Z\n\n#### `locale` (optional)\n\nAn internationalization language string for each timer unit. The default value\nis `en` (for English). This attribute supports all values that are supported by\nthe user's browser.\n\n#### `display-in` (optional)\n\nIf set to the value `utc`, the `display-in` attribute will convert the given\ndate to UTC.\n\n#### `offset-seconds` (optional)\n\nThe `offset-seconds` attribute specifies an integer number of seconds to shift\nthe given date.\n\n#### `data-options-\\*` (optional)\n\nThe `data-options-*` supports all the options under [Intl.DateTimeFormat.options](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/DateTimeFormat#parameters)\nparameter that specifies the formatting style to use for `localeString` format.\nValid attributes include: `data-options-date-style`, `data-options-time-style`, etc.\n\nNote that if `display-in` attrubute is set to `utc`, the value of\n`data-options-time-zone` will automatically be converted to `UTC`.\n\n### Styling\n\nYou may use the `bento-date-display` element selector to style the Bento Date Display component freely.\n\n---\n\n## Preact/React Component\n\n### Import via npm\n\n```sh\nnpm install @bentoproject/date-display\n```\n\n```javascript\nimport React from 'react';\nimport {BentoDateDisplay} from '@bentoproject/date-display/react';\nimport '@bentoproject/date-display/styles.css';\n\nfunction App() {\n  return (\n    <BentoDateDisplay\n      datetime={dateTime}\n      displayIn={displayIn}\n      locale={locale}\n      render={(date) => (\n        <div>{`ISO: ${date.iso}; locale: ${date.localeString}`}</div>\n      )}\n    />\n  );\n}\n```\n\n### Interactivity and API usage\n\nThe Bento Date Display component does not have an imperative API. However, the Bento Date Display Preact/React component does accept a `render` prop that renders the consumer's template. This `render` prop should be a function which the Bento Date Display Preact/React component can use to render its template. The `render` callback will be provided a variety of date-related parameters for consumers to interpolate in the rendered template. See the [`render` prop section](#render) for more information.\n\n### Layout and style\n\nThe Bento Date Display Preact/React component allows consumers to render their own templates. These templates may use inline styles, `<style>` tags, Preact/React components that import their own stylesheets.\n\n### Props\n\n#### `datetime`\n\nRequired prop. Denotes the date and time as a Date, String, or Number. If String, must be a standard ISO 8601 date string (e.g. 2017-08-02T15:05:05.000Z) or the string `now`. If set to `now`, it will use the time the page loaded to render its template. If Number, must be a POSIX epoch value in milliseconds.\n\n#### `displayIn`\n\nOptional prop that can be either `\"utc\"` or `\"local\"` and defaults to `\"local\"`. This prop indicates what timezone to display the date in. If set to the value `\"utc\"`, the component will convert the given date to UTC.\n\n#### `locale`\n\nAn internationalization language string for each timer unit. The default value is `en` (for English). This prop supports all values that are supported by the user's browser.\n\n#### `localeOptions`\n\nThe `localeOptions` object supports all the options under [Intl.DateTimeFormat.options](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/DateTimeFormat#parameters) parameter that specifies the formatting style to use for `localeString` format.\n\nNote that if the `displayIn` prop is set to `utc`, the value of `localeOptions.timeZone` will automatically be converted to `UTC`.\n\n#### `render`\n\nOptional callback that should render a template. The callback will be provided an object with properties/values related to the date expressed in `datetime`.\n\nBy default, the Bento Date Display component will display the [`localeString` form of the Date](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/toLocaleString) for the given locale and localeOption. See the [Returned Time Parameters section](#returned-time-parameters) for more details on how each property will be displayed.\n\n```typescript\n(dateParams: DateParams) => JSXInternal.Element\ninterface DateParams {\n  day: number;\n  dayName: string;\n  dayNameShort: string;\n  dayPeriod: string;\n  dayTwoDigit: string;\n  hour: number;\n  hour12: number;\n  hour12TwoDigit: string;\n  hourTwoDigit: string;\n  iso: string;\n  localeString: string;\n  minute: number;\n  minuteTwoDigit: string;\n  month: number;\n  monthName: string;\n  monthNameShort: string;\n  monthTwoDigit: string;\n  second: number;\n  secondTwoDigit: string;\n  timeZoneName: string;\n  timeZoneNameShort: string;\n  year: number;\n  yearTwoDi: string;\n}\n```\n\n### Returned Time Parameters\n\nThis table lists the format you can specify in your Mustache template:\n\n| Format            | Meaning                                                       |\n| ----------------- | ------------------------------------------------------------- |\n| day               | 1, 2, ...12, 13, etc.                                         |\n| dayName           | string,                                                       |\n| dayNameShort      | string,                                                       |\n| dayPeriod         | string,                                                       |\n| dayTwoDigit       | 01, 02, 03, ..., 12, 13, etc.                                 |\n| hour              | 0, 1, 2, 3, ..., 12, 13, ..., 22, 23                          |\n| hour12            | 1, 2, 3, ..., 12, 1, 2, ..., 11, 12                           |\n| hour12TwoDigit    | 01, 02, ..., 12, 01, 02, ..., 11, 12                          |\n| hourTwoDigit      | 00, 01, 02, ..., 12, 13, ..., 22, 23                          |\n| iso               | A standard ISO8601 date string e.g. 2019-01-23T15:31:21.213Z, |\n| localeString      | A string with a language sensitive representation.            |\n| minute            | 0, 1, 2, ..., 58, 59                                          |\n| minuteTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| month             | 1, 2, 3, ..., 12                                              |\n| monthName         | Internationalized month name string.                          |\n| monthNameShort    | Internationalized abbreviated month name string.,             |\n| monthTwoDigit     | 01, 02, ..., 11, 12                                           |\n| second            | 0, 1, 2, ..., 58, 59                                          |\n| secondTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| timeZoneName      | Internationalized timezone, like `Pacific Daylight Time`      |\n| timeZoneNameShort | Internationalized timezone, abbreviated, like `PST`           |\n| year              | 0, 1, 2, ..., 1999, 2000, 2001, etc.                          |\n| yearTwoDigit      | 00, 01, 02, ..., 17, 18, 19, ..., 98, 99                      |\n","readmeFilename":"README.md","gitHead":"767b9ceecbb9759948c2b0db6f66c49097659f98","bugs":{"url":"https://github.com/ampproject/amphtml/issues"},"_id":"@bentoproject/date-display@1.2302171719.0","_nodeVersion":"18.14.0","_npmVersion":"9.3.1","dist":{"integrity":"sha512-GYFw2LupaxbHUli0Oti8SOSKu/llkEaWRlMmMxoL6JfMx3axzrEYgEvn3ntOnMw/n4J71zxLKleg2wnPweh/Zw==","shasum":"43948b470b8b7975a0f3513e7d0429c447f94c4d","tarball":"https://registry.npmjs.org/@bentoproject/date-display/-/date-display-1.2302171719.0.tgz","fileCount":29,"unpackedSize":677013,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIFMZPxHBx+CWLwOu5jntq7HUnF9oDL42VjMGzyc4Sp6mAiAUBgUZHmUD7eD0pWXk7Uhqj3qJZ74FwseIA2UpZcWKWw=="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJj8Ir0ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmq95RAAk60c+wHUySVQWeZquIdjyIejpZwDpNY1Ni6IGEh76HpnXRSx\r\nrfLFYhg7fi3PBeNt8TLLh1roo54mM+9A+gPhUZfFvTGYYaqAViEGXjWV4Ni0\r\nd8es9xgysiY7wYXyOfiQuZDiolmwpYeFthV+GghLJ2QSgn847/kGytYR/r0u\r\nEnp5eYqYX2PgRITdFQJKfyGScIArmdufmjo3Jz0L85yedbmFprkzF+/k2pI8\r\nSeS9ygDj6HbDJqJ14gn1X5iEQDJ/ElRxayldQ4mMQry1mmMl+lkDZfiH8z0p\r\nnBTf8B6pVYGLcABgSRmmdLDf/Sxqtdj4bdPm8jBss+gbDbYQ4AJvinCfOh9H\r\nLeeQTbMsKvgmcF1HdrDpjMk1Hra6V+KjoJvTspoVGcWAKI1LxE6RqqHGAsqP\r\n4uF5ynbspMoVSyC2JYWInv63uOPm+Lyv2KR/FteOV36M/nQRZwYsBFNSpfoe\r\nOiCj7iurUMYQ+NkUKx4e5XiSprT1B7+Ip+0Xnqep48yJRoY3LMAiut50fb63\r\nOppH/wmsG/lYuBX0aJ4moa6HZT+AI1Z4G9yQu5OYpJ9kumcDNm8aotFXSNzL\r\n3uFTrGc7NDEG1LaLYcYUc2X2yxHRNdgwnBHM9+MpssSusQzp0xKBF2QT/Z/y\r\nLODDOK4EdGPkbiz8fAnezA2LoBxrytcP1eQ=\r\n=cS0H\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"bentoprojectbot","email":"bentobot@amp.dev"},"directories":{},"maintainers":[{"name":"bentoprojectbot","email":"bentobot@amp.dev"},{"name":"kristoferbaxter","email":"kbax@me.com"},{"name":"esth","email":"esther@amp.dev"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/date-display_1.2302171719.0_1676708596672_0.5206912361221843"},"_hasShrinkwrap":false},"1.2302271541.0":{"name":"@bentoproject/date-display","version":"1.2302271541.0","description":"Displays time data that you can render in your page.","author":{"name":"Bento Authors"},"license":"Apache-2.0","main":"./dist/web-component.js","module":"./dist/web-component.module.js","exports":{".":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./web-component":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./preact":{"import":"./dist/component-preact.module.js","require":"./dist/component-preact.js"},"./react":{"import":"./dist/component-react.module.js","require":"./dist/component-react.js"},"./web-component.css":"./dist/web-component.css"},"repository":{"type":"git","url":"git+https://github.com/ampproject/amphtml.git","directory":"extensions/amp-date-display/1.0"},"homepage":"https://github.com/ampproject/amphtml/tree/main/extensions/amp-date-display/1.0","peerDependencies":{"preact":"^10.2.1","react":"^17.0.0"},"dependencies":{"@bentoproject/core":"0.2302271541.0"},"gitHead":"13cfe7f4354a82bebe08fd29496c4c7de848a18b","bugs":{"url":"https://github.com/ampproject/amphtml/issues"},"_id":"@bentoproject/date-display@1.2302271541.0","_nodeVersion":"18.14.1","_npmVersion":"9.3.1","dist":{"integrity":"sha512-3qO0UVt5iD02ylbeSorhOLznjBPDa1O/raw2e/hItOR4HOKHkVCOW3pvZ7J8PY/2xFPxtXcpVqaCQyBinhaSpA==","shasum":"d2fd8ede847493f9096f642ad04037e24c72a37c","tarball":"https://registry.npmjs.org/@bentoproject/date-display/-/date-display-1.2302271541.0.tgz","fileCount":29,"unpackedSize":677013,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDcB8SwdXnaZffcfCGdEIABnx1v6jJJN7YjMeAIAl9PmgIhAPSPN3MOgDKUgrP461ex38MfHUfazf4RQbGdUqX6k3J7"}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJj/ji4ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrzRA//bb8DE08pHjTIS3oQbQ/UhEEO3m4UHrJ/v4IGQ+DdBYcequMR\r\nWsoGF+WpYzhmMBF2AWm3/v7tpHq0kP2mygeUDXSBPOBUTTXCpVL1fPhHTH2y\r\n8xptDpyDBalucfTgJmRlzP2qqI5ZXANighkR+0ZYeUxAdzRH0n6cSLcXcwiZ\r\nimJeGNyaJ9U5FiLNTCO7r5b08t3bJWPAYyv1Er7rU0dn1sWCTRYNe02gYmRC\r\niWAKgfWUPKgcXg3R4Jk0lHzrZilZkzHsZyeokI1ygjkon/Qg/cQexovVub1R\r\nF0FEVXzToxNR4msqCdF3F4HSEvH5Lna4wmIpZGlIhrTJqgJhgzHZdwI5A5Bs\r\nw6eXn+uP4Dj4YIbNb7sShhpXj0in+een1GJWq61Do24QI68pUc36DrOX/7BJ\r\nN1fBjxIw9bbB0uhofq6W9lSIJB0wrSbCqR8CMkLbLxYU1QdfWEo2F1PfdiHn\r\nmVyFMkEmU4cbNLdOMqj40mKXOJIoHRyQT/qcq7cdD7D/oR6fkv4N3+/t1O0U\r\nW0n7OE+Lvq0xuokiYIN3el/rzx5V0zwQgWYHCv7nCLTKCe8mrlsDWgdFmntQ\r\nJbCEW2q4C1hZwqJmWHskExJoob1eIP28yoAcCDGuk4AxgWfmgE3TR/PbrKlS\r\nRSFpyv/JGBvnmiSQu/ohLkJllI6ExzCggSM=\r\n=DzP8\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"bentoprojectbot","email":"bentobot@amp.dev"},"directories":{},"maintainers":[{"name":"bentoprojectbot","email":"bentobot@amp.dev"},{"name":"kristoferbaxter","email":"kbax@me.com"},{"name":"esth","email":"esther@amp.dev"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/date-display_1.2302271541.0_1677605048050_0.07876041832524017"},"_hasShrinkwrap":false},"1.2303151529.0":{"name":"@bentoproject/date-display","version":"1.2303151529.0","description":"Displays time data that you can render in your page.","author":{"name":"Bento Authors"},"license":"Apache-2.0","main":"./dist/web-component.js","module":"./dist/web-component.module.js","exports":{".":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./web-component":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./preact":{"import":"./dist/component-preact.module.js","require":"./dist/component-preact.js"},"./react":{"import":"./dist/component-react.module.js","require":"./dist/component-react.js"},"./web-component.css":"./dist/web-component.css"},"repository":{"type":"git","url":"git+https://github.com/ampproject/amphtml.git","directory":"extensions/amp-date-display/1.0"},"homepage":"https://github.com/ampproject/amphtml/tree/main/extensions/amp-date-display/1.0","peerDependencies":{"preact":"^10.2.1","react":"^17.0.0"},"dependencies":{"@bentoproject/core":"0.2303151529.0"},"gitHead":"d02f1bef730eec6d78d3f2fa5968ca88a60acf17","bugs":{"url":"https://github.com/ampproject/amphtml/issues"},"_id":"@bentoproject/date-display@1.2303151529.0","_nodeVersion":"18.15.0","_npmVersion":"9.5.0","dist":{"integrity":"sha512-VZpqTGF+NgCq49YYEYGK9D6skun9uO1otOSJVdKMCmyYK6spiCGVCEDsX4EvTMsJXi+eMo6zwmnP+GooJUYrxQ==","shasum":"af4b740f9d3ad0e5f9a571e25180aa3290345e17","tarball":"https://registry.npmjs.org/@bentoproject/date-display/-/date-display-1.2303151529.0.tgz","fileCount":29,"unpackedSize":677013,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCSDrFQdyv2UnNHvPKxPQqJNLY6HUdBGrnhQTf5PV987QIhAO8MGIEiM6kfIngbfB9geN9ub8pcYRS21E46jjMGARbO"}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJkEfGbACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmptfg/+O8jZPZuJ0fIBsF3Fjso64Pd7SFGt/YwpcAjhUb/9jaezGgUm\r\nXuU61j7i9lqChMQPov/1FhhxsjH2IaIiNBJlkRPDy6FSYvKbqcihFJrqpsk+\r\n3Sdvd0d7NTVixMqtyzwNVlla/InBx0eZAB9BwL3PgE/t2HgR7INidJcqDoEh\r\nA4gKAZl3l4hpmhzuABpBz2ifF79gneAaPMaO2B8A9nYwZUh5NETXKXDgMkzr\r\njr/AmgRBjtQhROAeZ339xWwk9F67PE40uA9tLq3wIb1a4tMzB+QOElOq0nok\r\nBnFZ/HhQEHux5wOd9L4AFA8VSGbvTKtrGBdyeKzvcxfV5tueM/W2yxR09mft\r\nNKGR5G4V9pElMGD5RSelI0NFiF58z67MXNgrZCHI8wBbHUZh5lxlUfiVOylK\r\nFMC2az1ECHGBiRgo54MFKqdIhlV5MvCAbY0gvn30kgBeHby8wBVe/tQvxqU/\r\nSazzNwPybzVYvbWHeGNYRmQ93srfh0CTAkneHovf198Qp2DDarNmSNW4KtL9\r\ny+OwGlRpAhgINyyD+C34W78O51JboLKikzajU2wPEAkA2RUOXyaYUlRp3vYn\r\nSRMk/+++0miWrULsN1v2hEmvCBWY7VY/Alt1oqt91ggnPt1lgHDIdNu4meMK\r\njvk7p4wjr3mJT2sKH3M4wlhHKujUEgRcxe4=\r\n=x6pv\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"bentoprojectbot","email":"bentobot@amp.dev"},"directories":{},"maintainers":[{"name":"bentoprojectbot","email":"bentobot@amp.dev"},{"name":"kristoferbaxter","email":"kbax@me.com"},{"name":"esth","email":"esther@amp.dev"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/date-display_1.2303151529.0_1678897563002_0.2643031524920785"},"_hasShrinkwrap":false},"1.2303151621.0":{"name":"@bentoproject/date-display","version":"1.2303151621.0","description":"Displays time data that you can render in your page.","author":{"name":"Bento Authors"},"license":"Apache-2.0","main":"./dist/web-component.js","module":"./dist/web-component.module.js","exports":{".":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./web-component":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./preact":{"import":"./dist/component-preact.module.js","require":"./dist/component-preact.js"},"./react":{"import":"./dist/component-react.module.js","require":"./dist/component-react.js"},"./web-component.css":"./dist/web-component.css"},"repository":{"type":"git","url":"git+https://github.com/ampproject/amphtml.git","directory":"extensions/amp-date-display/1.0"},"homepage":"https://github.com/ampproject/amphtml/tree/main/extensions/amp-date-display/1.0","peerDependencies":{"preact":"^10.2.1","react":"^17.0.0"},"dependencies":{"@bentoproject/core":"0.2303151621.0"},"gitHead":"d02f1bef730eec6d78d3f2fa5968ca88a60acf17","bugs":{"url":"https://github.com/ampproject/amphtml/issues"},"_id":"@bentoproject/date-display@1.2303151621.0","_nodeVersion":"18.15.0","_npmVersion":"9.5.0","dist":{"integrity":"sha512-wqr1iU7/UHTCtUWG2OJATW+JYQbWQ/OlqV6T5i9qK1HTA2tmf08sapQltM2NVZNR//KBepHdNXYdc54wYna3qQ==","shasum":"7cb3ad3b67fa1d0915f1e1561c5d6b82bf588dd1","tarball":"https://registry.npmjs.org/@bentoproject/date-display/-/date-display-1.2303151621.0.tgz","fileCount":29,"unpackedSize":677013,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIEVVNj3O1aQKlX10uzgBPRY1QQ6RuStHynX7qt0Gm4IgAiBI7mjbC/Na4e3nwJORqMFNIQXi32yMh+KDc0hPcCyV2Q=="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJkGrtaACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmp4Yw/9G1Hgdfr9C42zqgvI5NL+LNqIqQuvPQ9ljq7/1PphlwkRwHs4\r\n6vUdL2z6YvN/M46FmbdZePpz5hMmCi5YUvyKyDUfM8bXKoUTa+H9NrUVgBSv\r\nNCtlmJTW0+JQH0UJI7inLqAOzG/tWvsRs9z+L4PxDViuLRuDCglqJsXB8zRZ\r\nTrlAz1c098QsnuNjiesbEBK8oxV/oAtm8AM7i/42nkQ3RJawv8sXFgZiRHWe\r\n0s666ReF7N8UHPw56TLNaiUKdQEdHJgC7wlINBIHytAqC5QoCiO4fobY5XXi\r\nqEKrrM8+FQtKX7GNDwxvZvXgb2JbLNnO8/P9qETuaD+JmjxPckvsRf6K5llc\r\n2sP6bFcMnZhnmQAT+gF4gperA6OSN0NYXGO20ljYcCJfDx1DltgLR/Kurwgv\r\nWCBbFvnJ7cNILlBDUPtDD9VgwwlgQJPIHwPOUYW3JAkEKRaioj4u/uWo/rZS\r\nUtu2Hjp+cBv8KRNCCpQOJVGk5i0uqPjKrdbVRCiC9n5pXG8aDNbf4bE/uyxt\r\nMx7lcLA3zPGebv0OCJc8k/rHWzIxe4zvWdk0QSDiova7OE25kOMDzoLN2L5W\r\n6HwyVyP+IKDnCVybo0mxLnJqS1vizpjfSKI6PNpiPN1UJJV/dmZWbW8pCkKU\r\nQBFN+sjxfids3MieLruBFrA+5/vVOU+k5lM=\r\n=3twv\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"bentoprojectbot","email":"bentobot@amp.dev"},"directories":{},"maintainers":[{"name":"bentoprojectbot","email":"bentobot@amp.dev"},{"name":"kristoferbaxter","email":"kbax@me.com"},{"name":"esth","email":"esther@amp.dev"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/date-display_1.2303151621.0_1679473498048_0.33340864487381205"},"_hasShrinkwrap":false},"1.2303231800.0":{"name":"@bentoproject/date-display","version":"1.2303231800.0","description":"Displays time data that you can render in your page.","author":{"name":"Bento Authors"},"license":"Apache-2.0","main":"./dist/web-component.js","module":"./dist/web-component.module.js","exports":{".":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./web-component":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./preact":{"import":"./dist/component-preact.module.js","require":"./dist/component-preact.js"},"./react":{"import":"./dist/component-react.module.js","require":"./dist/component-react.js"},"./web-component.css":"./dist/web-component.css"},"repository":{"type":"git","url":"git+https://github.com/ampproject/amphtml.git","directory":"extensions/amp-date-display/1.0"},"homepage":"https://github.com/ampproject/amphtml/tree/main/extensions/amp-date-display/1.0","peerDependencies":{"preact":"^10.2.1","react":"^17.0.0"},"dependencies":{"@bentoproject/core":"0.2303231800.0"},"gitHead":"bb614003484012cda74511a460e3958f01512a79","bugs":{"url":"https://github.com/ampproject/amphtml/issues"},"_id":"@bentoproject/date-display@1.2303231800.0","_nodeVersion":"18.15.0","_npmVersion":"9.5.0","dist":{"integrity":"sha512-WahSCjkDJCG6P1YeonLhQi59XEfnPvFAN4suiZMo6Ka/jJD4IXSbKDiWNzNavRS6sVotLP16lJXpojYqcD69dg==","shasum":"b04a2ecdc027d51b4490239fc74b688909733d10","tarball":"https://registry.npmjs.org/@bentoproject/date-display/-/date-display-1.2303231800.0.tgz","fileCount":29,"unpackedSize":677013,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIAcQYk2qDNp+uXgVZjRQ6C2+JRPK1I0fvjSWdXzJKOOiAiEA6OfkgGMIosow/GenfcpbnIR6hb2OANWrF2MI/ZpBsPE="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJkJAsGACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmr27hAAiQofDmFOKStwhbNvoA7a8zPgX0gOF8S+l5/ek4AcW1bl6d6i\r\nbxie7I3qXREeyiuZt3OC6gu0/0i/Tih3U9AleXQoIX1g7fk2FrS7xFu5mh/U\r\n0Nxf0EeDNm7pDRgUc9PyZGwi6gQBoBrggLy79WcoLGpYhl41kvpxrTwzmiOq\r\nyJpIiaJXkPpYiBtpk+D/dmGn2C8+N/G8WDfC0U9QVtqmaMvrT8I8HdrB2cvK\r\nXYm+xMdUG8t+NJR/zpX7N6zfJQjBVNhpsG0bpJRYGABH9ARbFf7ZZbqBBuaT\r\nvuMyl9W7SM4fdmrCq4RQtvsvkPgnO+jsin8pKwA3v2u/DKkyV6x8bXqez448\r\nMYwOtnEe98Dih+5T4381UoKqfuoB7CClRLQHsbFaMsIqKZbjdy4p8w+fazih\r\nEeDHQq/P7WNk+MnDth/q7wJndfBShePS86YJ05V2DNvQW4sdsd2ghkygXjRr\r\nBr9U2He+phqq/VnKVzzMMvNqSmOZeFj8egXqjxRK4QeO5QoMQnzNEOmnUOUK\r\nlso2UUAe1Lkx8SbqXqaf1kcD28VJ8J4K5MNUfb8M4xLxTVvksxoiQWL98P1m\r\n6TjEHMOEK60uq7oc07b3/KPRcyFQ2zvPpEthJWMhGjqphYZMoM5LRw4s93o2\r\nUxeZ6d3qS0UB3942qD3aQJuXkXuTS4iHiS0=\r\n=lNgX\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"bentoprojectbot","email":"bentobot@amp.dev"},"directories":{},"maintainers":[{"name":"bentoprojectbot","email":"bentobot@amp.dev"},{"name":"kristoferbaxter","email":"kbax@me.com"},{"name":"esth","email":"esther@amp.dev"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/date-display_1.2303231800.0_1680083718235_0.2406761071989374"},"_hasShrinkwrap":false},"1.2304040531.0":{"name":"@bentoproject/date-display","version":"1.2304040531.0","description":"Displays time data that you can render in your page.","author":{"name":"Bento Authors"},"license":"Apache-2.0","main":"./dist/web-component.js","module":"./dist/web-component.module.js","exports":{".":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./web-component":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./preact":{"import":"./dist/component-preact.module.js","require":"./dist/component-preact.js"},"./react":{"import":"./dist/component-react.module.js","require":"./dist/component-react.js"},"./web-component.css":"./dist/web-component.css"},"repository":{"type":"git","url":"git+https://github.com/ampproject/amphtml.git","directory":"extensions/amp-date-display/1.0"},"homepage":"https://github.com/ampproject/amphtml/tree/main/extensions/amp-date-display/1.0","peerDependencies":{"preact":"^10.2.1","react":"^17.0.0"},"dependencies":{"@bentoproject/core":"0.2304040531.0"},"readme":"# Bento Date Display\n\nDisplays time data that you can render in your page. By providing specific [attributes](#attributes) in the Bento Date Display tag, the Bento Date Display extension returns a list of time parameters, which you can pass to [an amp-mustache template](../../amp-mustache/amp-mustache.md) for rendering. Refer to the [list below for each returned time parameter](#returned-time-parameters).\n\n## Web Component\n\nYou must include each Bento component's required CSS library to guarantee proper loading and before adding custom styles. Or use the light-weight pre-upgrade styles available inline. See [Layout and style](#layout-and-style).\n\n### Example: Import via npm\n\nInstall via npm:\n\n```sh\nnpm install @bentoproject/bento-date-display\n```\n\n```javascript\nimport {defineElement as defineBentoDateDisplay} from '@bentoproject/bento-date-display';\ndefineBentoDateDisplay();\n```\n\n### Include via `<script>`\n\n```html\n<script type=\"module\" src=\"https://cdn.ampproject.org/bento.mjs\" crossorigin=\"anonymous\"></script>\n<script nomodule src=\"https://cdn.ampproject.org/bento.js\" crossorigin=\"anonymous\"></script>\n<!-- Include bento-mustache.js to use mustache templates with this component -->\n<script async src=\"https://cdn.ampproject.org/v0/bento-mustache.js\"></script>\n<script type=\"module\" src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.mjs\" crossorigin=\"anonymous\"></script>\n<script nomodule src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.js\" crossorigin=\"anonymous\"></script>\n<link rel=\"stylesheet\" href=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.css\" crossorigin=\"anonymous\">\n```\n\n### Example\n\n```html\n<!DOCTYPE html>\n<html>\n  <head>\n    <script\n      type=\"module\"\n      async\n      src=\"https://cdn.ampproject.org/bento.mjs\"\n    ></script>\n    <script nomodule src=\"https://cdn.ampproject.org/bento.js\"></script>\n    <script async src=\"https://cdn.ampproject.org/v0/bento-mustache.js\"></script>\n    <script\n      type=\"module\"\n      async\n      src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.mjs\"\n    ></script>\n    <script\n      nomodule\n      async\n      src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.js\"\n    ></script>\n    <link\n      rel=\"stylesheet\"\n      type=\"text/css\"\n      href=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.css\"\n    />\n  </head>\n  <body>\n    <bento-date-display\n      datetime=\"2021-09-09T16:02:08.494Z\"\n      displayIn=\"utc\"\n      locale=\"en-GB\"\n    >\n      <template>\n        <div>ISO: {{iso}}; locale: {{localeString}}</div>\n      </template>\n    </bento-date-display>\n  </body>\n</html>\n```\n\n### Interactivity and API usage\n\nThe Bento Date Display component does not have an imperative API. However, the Bento Date Display Web Component will render a mustache-template, provided by the consumer in a `<template>` tag with `type=\"amp-mustache\"`. This template may interpolate date-related parameters. See the [Returned Time Parameters section](#returned-time-parameters) for a full list of all the available parameters.\n\n### Layout and style\n\nEach Bento component has a small CSS library you must include to guarantee proper loading without [content shifts](https://web.dev/cls/). Because of order-based specificity, you must manually ensure that stylesheets are included before any custom styles.\n\n```html\n<link rel=\"stylesheet\" type=\"text/css\" href=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.css\">\n```\n\nAlternatively, you may also make the light-weight pre-upgrade styles available inline:\n\n```html\n<style data-bento-boilerplate>\n  bento-date-display {\n    display: block;\n    overflow: hidden;\n    position: relative;\n  }\n</style>\n```\n\n### Attributes\n\n#### `datetime`\n\nThe `datetime` attribute specifies the date and time in a standard ISO 8601 date\nstring (e.g. 2017-08-02T15:05:05.000Z) or the string `now`. If set to `now`,\n`bento-date-display` will use the time the page loaded to render its template.\n\n#### `timestamp-ms`\n\nThe `timestamp-ms` attribute specifies the date and time using the number of\nmilliseconds since 1970-01-01T0:00:00.000Z\n\n#### `timestamp-seconds`\n\nThe `timestamp-seconds` attribute specifies the date and time using the number\nof seconds since 1970-01-01T0:00:00.000Z\n\n#### `locale` (optional)\n\nAn internationalization language string for each timer unit. The default value\nis `en` (for English). This attribute supports all values that are supported by\nthe user's browser.\n\n#### `display-in` (optional)\n\nIf set to the value `utc`, the `display-in` attribute will convert the given\ndate to UTC.\n\n#### `offset-seconds` (optional)\n\nThe `offset-seconds` attribute specifies an integer number of seconds to shift\nthe given date.\n\n#### `data-options-\\*` (optional)\n\nThe `data-options-*` supports all the options under [Intl.DateTimeFormat.options](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/DateTimeFormat#parameters)\nparameter that specifies the formatting style to use for `localeString` format.\nValid attributes include: `data-options-date-style`, `data-options-time-style`, etc.\n\nNote that if `display-in` attrubute is set to `utc`, the value of\n`data-options-time-zone` will automatically be converted to `UTC`.\n\n### Styling\n\nYou may use the `bento-date-display` element selector to style the Bento Date Display component freely.\n\n---\n\n## Preact/React Component\n\n### Import via npm\n\n```sh\nnpm install @bentoproject/date-display\n```\n\n```javascript\nimport React from 'react';\nimport {BentoDateDisplay} from '@bentoproject/date-display/react';\nimport '@bentoproject/date-display/styles.css';\n\nfunction App() {\n  return (\n    <BentoDateDisplay\n      datetime={dateTime}\n      displayIn={displayIn}\n      locale={locale}\n      render={(date) => (\n        <div>{`ISO: ${date.iso}; locale: ${date.localeString}`}</div>\n      )}\n    />\n  );\n}\n```\n\n### Interactivity and API usage\n\nThe Bento Date Display component does not have an imperative API. However, the Bento Date Display Preact/React component does accept a `render` prop that renders the consumer's template. This `render` prop should be a function which the Bento Date Display Preact/React component can use to render its template. The `render` callback will be provided a variety of date-related parameters for consumers to interpolate in the rendered template. See the [`render` prop section](#render) for more information.\n\n### Layout and style\n\nThe Bento Date Display Preact/React component allows consumers to render their own templates. These templates may use inline styles, `<style>` tags, Preact/React components that import their own stylesheets.\n\n### Props\n\n#### `datetime`\n\nRequired prop. Denotes the date and time as a Date, String, or Number. If String, must be a standard ISO 8601 date string (e.g. 2017-08-02T15:05:05.000Z) or the string `now`. If set to `now`, it will use the time the page loaded to render its template. If Number, must be a POSIX epoch value in milliseconds.\n\n#### `displayIn`\n\nOptional prop that can be either `\"utc\"` or `\"local\"` and defaults to `\"local\"`. This prop indicates what timezone to display the date in. If set to the value `\"utc\"`, the component will convert the given date to UTC.\n\n#### `locale`\n\nAn internationalization language string for each timer unit. The default value is `en` (for English). This prop supports all values that are supported by the user's browser.\n\n#### `localeOptions`\n\nThe `localeOptions` object supports all the options under [Intl.DateTimeFormat.options](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/DateTimeFormat#parameters) parameter that specifies the formatting style to use for `localeString` format.\n\nNote that if the `displayIn` prop is set to `utc`, the value of `localeOptions.timeZone` will automatically be converted to `UTC`.\n\n#### `render`\n\nOptional callback that should render a template. The callback will be provided an object with properties/values related to the date expressed in `datetime`.\n\nBy default, the Bento Date Display component will display the [`localeString` form of the Date](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/toLocaleString) for the given locale and localeOption. See the [Returned Time Parameters section](#returned-time-parameters) for more details on how each property will be displayed.\n\n```typescript\n(dateParams: DateParams) => JSXInternal.Element\ninterface DateParams {\n  day: number;\n  dayName: string;\n  dayNameShort: string;\n  dayPeriod: string;\n  dayTwoDigit: string;\n  hour: number;\n  hour12: number;\n  hour12TwoDigit: string;\n  hourTwoDigit: string;\n  iso: string;\n  localeString: string;\n  minute: number;\n  minuteTwoDigit: string;\n  month: number;\n  monthName: string;\n  monthNameShort: string;\n  monthTwoDigit: string;\n  second: number;\n  secondTwoDigit: string;\n  timeZoneName: string;\n  timeZoneNameShort: string;\n  year: number;\n  yearTwoDi: string;\n}\n```\n\n### Returned Time Parameters\n\nThis table lists the format you can specify in your Mustache template:\n\n| Format            | Meaning                                                       |\n| ----------------- | ------------------------------------------------------------- |\n| day               | 1, 2, ...12, 13, etc.                                         |\n| dayName           | string,                                                       |\n| dayNameShort      | string,                                                       |\n| dayPeriod         | string,                                                       |\n| dayTwoDigit       | 01, 02, 03, ..., 12, 13, etc.                                 |\n| hour              | 0, 1, 2, 3, ..., 12, 13, ..., 22, 23                          |\n| hour12            | 1, 2, 3, ..., 12, 1, 2, ..., 11, 12                           |\n| hour12TwoDigit    | 01, 02, ..., 12, 01, 02, ..., 11, 12                          |\n| hourTwoDigit      | 00, 01, 02, ..., 12, 13, ..., 22, 23                          |\n| iso               | A standard ISO8601 date string e.g. 2019-01-23T15:31:21.213Z, |\n| localeString      | A string with a language sensitive representation.            |\n| minute            | 0, 1, 2, ..., 58, 59                                          |\n| minuteTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| month             | 1, 2, 3, ..., 12                                              |\n| monthName         | Internationalized month name string.                          |\n| monthNameShort    | Internationalized abbreviated month name string.,             |\n| monthTwoDigit     | 01, 02, ..., 11, 12                                           |\n| second            | 0, 1, 2, ..., 58, 59                                          |\n| secondTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| timeZoneName      | Internationalized timezone, like `Pacific Daylight Time`      |\n| timeZoneNameShort | Internationalized timezone, abbreviated, like `PST`           |\n| year              | 0, 1, 2, ..., 1999, 2000, 2001, etc.                          |\n| yearTwoDigit      | 00, 01, 02, ..., 17, 18, 19, ..., 98, 99                      |\n","readmeFilename":"README.md","gitHead":"201864e5a81ca3bd8ba23d3a14d9ac4f88d7a66d","bugs":{"url":"https://github.com/ampproject/amphtml/issues"},"_id":"@bentoproject/date-display@1.2304040531.0","_nodeVersion":"18.15.0","_npmVersion":"9.5.0","dist":{"integrity":"sha512-0J6hYTLSvKDY0p1dZ493EGsLmMMQczNiEKlv34ERpI05lOLmUroTKTkQUOOY7YdRQXVz4vFrnkKaoM7kGRhtFg==","shasum":"21088cde8fb6f57742405e865254d25182a3963b","tarball":"https://registry.npmjs.org/@bentoproject/date-display/-/date-display-1.2304040531.0.tgz","fileCount":29,"unpackedSize":677013,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQClblZgpkhy6aF+SuJI2XNrwRrKHRfpeJ7Zc27EWhPHIAIgVbky5d7ZKXgwZvbK8+b7xfllMm29I+YCufF8A/zlGRs="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJkK976ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrWNA//Qzm9ZRJaDRJmfl9pYsjGjgyDpc7dnGnav6nTvqzuIxOrO7UH\r\nikpQOUrKJwSvfmk/nUkOgdOpZQzpBS1kKfdObnBrAILsTJlGNGUFyA+UiIlh\r\nYvkBUKkb00lwPFYec/2cDXbY02/veLwVnJac8GT6Z1vg5iEC5QYjDyjxxcDU\r\ny8sMI59Qzts+09uKwmUQM83I8osi+iBtWxGhwxb/WpSLes00nX+6+HuCfXVg\r\nk6ZgLRVKBme+0ckUJbdDSBzROZRXrD0rIxqKXjhbSTwPbYBwXFyeXfZ4vS9k\r\n7EVDYMJkGY/hHgai6CNuxIVRhXF+bySENuI2JGF+DLIdgFzVteHnpt8CvBZl\r\nIp+ObxHKj3WP8gp9kV7ZclRK1jd3ju95QAF68ezXYj7z1W6y4vxD9eSg6los\r\n+wFJoMa14GdlnMAaLto1NEILt8uizYf1CPoQbeho9f7L903VJ3VbXR08nKC9\r\nj8eNIlO38NRtlQy1LBG6qxve6WEPO6SGqnlLWpmuWCIKYUP+f6rpb92do2RL\r\nLE0g6/Q36sTNfNwS26qI1v+oU4Z29x28TJFLhnWu+zA1PYKtTizTL8gUeiIF\r\nPUrsXEOS4DExI0RZA3cfWTvhNqMDbUzUPsD77rOJ+stTQH6IjdM3Jb9qxIsP\r\n1IzALlKwIBP6xo2tyjGbjPDlLrZZKR0Z6ik=\r\n=qN6p\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"bentoprojectbot","email":"bentobot@amp.dev"},"directories":{},"maintainers":[{"name":"bentoprojectbot","email":"bentobot@amp.dev"},{"name":"kristoferbaxter","email":"kbax@me.com"},{"name":"esth","email":"esther@amp.dev"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/date-display_1.2304040531.0_1680596730481_0.5762709012873009"},"_hasShrinkwrap":false},"1.2304062309.0":{"name":"@bentoproject/date-display","version":"1.2304062309.0","description":"Displays time data that you can render in your page.","author":{"name":"Bento Authors"},"license":"Apache-2.0","main":"./dist/web-component.js","module":"./dist/web-component.module.js","exports":{".":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./web-component":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./preact":{"import":"./dist/component-preact.module.js","require":"./dist/component-preact.js"},"./react":{"import":"./dist/component-react.module.js","require":"./dist/component-react.js"},"./web-component.css":"./dist/web-component.css"},"repository":{"type":"git","url":"git+https://github.com/ampproject/amphtml.git","directory":"extensions/amp-date-display/1.0"},"homepage":"https://github.com/ampproject/amphtml/tree/main/extensions/amp-date-display/1.0","peerDependencies":{"preact":"^10.2.1","react":"^17.0.0"},"dependencies":{"@bentoproject/core":"0.2304062309.0"},"gitHead":"988ca302278a65b8d468409a444b029bc633cd01","bugs":{"url":"https://github.com/ampproject/amphtml/issues"},"_id":"@bentoproject/date-display@1.2304062309.0","_nodeVersion":"18.15.0","_npmVersion":"9.5.0","dist":{"integrity":"sha512-Z6ttPtGesxc6Drat9cywnLSwULqJ/nbvIJxS2gceYcqSErVTFc6MvyS5iDohsdHe7ffeMAU3SwE1AxAKMh9nYw==","shasum":"a92bc0622f1ab39e745a6ea2d86edc9d67e23525","tarball":"https://registry.npmjs.org/@bentoproject/date-display/-/date-display-1.2304062309.0.tgz","fileCount":29,"unpackedSize":677013,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDG6Imj+Pb1zs0T5sSrP1BHRDcJ0LGS8SdnhLCMo+SVMAIhAMtfV0G75M8pN0QoMvCLijfNvlIjAGtMZdSXvycfvL5G"}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJkL9M2ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmr0VA//QkWWyvGJjaQzHclYsiP+l8lWq96A7+bUdV6kFXHT+wjFEYlR\r\nNImiqnroEXf/zhZGn9Gag27wbsg3lwN7DG1HIq0A3tRSjvZTMixkOTTpEk7i\r\nLmW9L8RDNYRS8jltXd9uNc505prxhHY3640KzFK1p0mop0l45QSVdqLCtiAh\r\nXeN2Lpk7JNwBc44src5qZsTroTsPNZLjcs6BtmUtCEa2GlPcjqJYY6/jNp10\r\nvkqvO/rirlNYOSegxtxJiTyb5kMPhJd/nIXt91QcJZp8HwTQoXjrtzdGvRj4\r\nHLIcgiIvCEHn0S9K7cl8l4aepfas/03B8Yxu+24UlmwCf8X1SayAe6CE81WW\r\nCtlh39xGbe/Jqlg8GDtu6k0yX4+4w6DhjEBVguskfIlecWu0GodK3SHoIw/R\r\nJAqXNkBrOB6QS3lxMz0iyHZD0cF7cKpvgZDL0ctGjSBy2YCzrDDd5M6mtKUB\r\nt5zIR5T9ZrwsVG9gx3ubbY5BRYWqMunuxSdEwa4Q3aqw9/Rem3q5c0JdjPIp\r\nHeK5Kv039C1wy3rhWLBrOWHSQnCv51NhaoOt/hcTzregOZRep9qhXZUlNQAs\r\nwNS6l5ZdPHOZ8p8AoPZ2kvlhlUtbEaDyZoDbpgVeHFTlbBoAHFQRMwLxlBSy\r\nrtHURyb7h8u3avVDEOXaW6BdIe6FGbKPSR4=\r\n=CAdK\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"bentoprojectbot","email":"bentobot@amp.dev"},"directories":{},"maintainers":[{"name":"bentoprojectbot","email":"bentobot@amp.dev"},{"name":"kristoferbaxter","email":"kbax@me.com"},{"name":"esth","email":"esther@amp.dev"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/date-display_1.2304062309.0_1680855862046_0.7197870782404465"},"_hasShrinkwrap":false},"1.2304122229.0":{"name":"@bentoproject/date-display","version":"1.2304122229.0","description":"Displays time data that you can render in your page.","author":{"name":"Bento Authors"},"license":"Apache-2.0","main":"./dist/web-component.js","module":"./dist/web-component.module.js","exports":{".":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./web-component":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./preact":{"import":"./dist/component-preact.module.js","require":"./dist/component-preact.js"},"./react":{"import":"./dist/component-react.module.js","require":"./dist/component-react.js"},"./web-component.css":"./dist/web-component.css"},"repository":{"type":"git","url":"git+https://github.com/ampproject/amphtml.git","directory":"extensions/amp-date-display/1.0"},"homepage":"https://github.com/ampproject/amphtml/tree/main/extensions/amp-date-display/1.0","peerDependencies":{"preact":"^10.2.1","react":"^17.0.0"},"dependencies":{"@bentoproject/core":"0.2304122229.0"},"readme":"# Bento Date Display\n\nDisplays time data that you can render in your page. By providing specific [attributes](#attributes) in the Bento Date Display tag, the Bento Date Display extension returns a list of time parameters, which you can pass to [an amp-mustache template](../../amp-mustache/amp-mustache.md) for rendering. Refer to the [list below for each returned time parameter](#returned-time-parameters).\n\n## Web Component\n\nYou must include each Bento component's required CSS library to guarantee proper loading and before adding custom styles. Or use the light-weight pre-upgrade styles available inline. See [Layout and style](#layout-and-style).\n\n### Example: Import via npm\n\nInstall via npm:\n\n```sh\nnpm install @bentoproject/bento-date-display\n```\n\n```javascript\nimport {defineElement as defineBentoDateDisplay} from '@bentoproject/bento-date-display';\ndefineBentoDateDisplay();\n```\n\n### Include via `<script>`\n\n```html\n<script type=\"module\" src=\"https://cdn.ampproject.org/bento.mjs\" crossorigin=\"anonymous\"></script>\n<script nomodule src=\"https://cdn.ampproject.org/bento.js\" crossorigin=\"anonymous\"></script>\n<!-- Include bento-mustache.js to use mustache templates with this component -->\n<script async src=\"https://cdn.ampproject.org/v0/bento-mustache.js\"></script>\n<script type=\"module\" src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.mjs\" crossorigin=\"anonymous\"></script>\n<script nomodule src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.js\" crossorigin=\"anonymous\"></script>\n<link rel=\"stylesheet\" href=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.css\" crossorigin=\"anonymous\">\n```\n\n### Example\n\n```html\n<!DOCTYPE html>\n<html>\n  <head>\n    <script\n      type=\"module\"\n      async\n      src=\"https://cdn.ampproject.org/bento.mjs\"\n    ></script>\n    <script nomodule src=\"https://cdn.ampproject.org/bento.js\"></script>\n    <script async src=\"https://cdn.ampproject.org/v0/bento-mustache.js\"></script>\n    <script\n      type=\"module\"\n      async\n      src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.mjs\"\n    ></script>\n    <script\n      nomodule\n      async\n      src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.js\"\n    ></script>\n    <link\n      rel=\"stylesheet\"\n      type=\"text/css\"\n      href=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.css\"\n    />\n  </head>\n  <body>\n    <bento-date-display\n      datetime=\"2021-09-09T16:02:08.494Z\"\n      displayIn=\"utc\"\n      locale=\"en-GB\"\n    >\n      <template>\n        <div>ISO: {{iso}}; locale: {{localeString}}</div>\n      </template>\n    </bento-date-display>\n  </body>\n</html>\n```\n\n### Interactivity and API usage\n\nThe Bento Date Display component does not have an imperative API. However, the Bento Date Display Web Component will render a mustache-template, provided by the consumer in a `<template>` tag with `type=\"amp-mustache\"`. This template may interpolate date-related parameters. See the [Returned Time Parameters section](#returned-time-parameters) for a full list of all the available parameters.\n\n### Layout and style\n\nEach Bento component has a small CSS library you must include to guarantee proper loading without [content shifts](https://web.dev/cls/). Because of order-based specificity, you must manually ensure that stylesheets are included before any custom styles.\n\n```html\n<link rel=\"stylesheet\" type=\"text/css\" href=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.css\">\n```\n\nAlternatively, you may also make the light-weight pre-upgrade styles available inline:\n\n```html\n<style data-bento-boilerplate>\n  bento-date-display {\n    display: block;\n    overflow: hidden;\n    position: relative;\n  }\n</style>\n```\n\n### Attributes\n\n#### `datetime`\n\nThe `datetime` attribute specifies the date and time in a standard ISO 8601 date\nstring (e.g. 2017-08-02T15:05:05.000Z) or the string `now`. If set to `now`,\n`bento-date-display` will use the time the page loaded to render its template.\n\n#### `timestamp-ms`\n\nThe `timestamp-ms` attribute specifies the date and time using the number of\nmilliseconds since 1970-01-01T0:00:00.000Z\n\n#### `timestamp-seconds`\n\nThe `timestamp-seconds` attribute specifies the date and time using the number\nof seconds since 1970-01-01T0:00:00.000Z\n\n#### `locale` (optional)\n\nAn internationalization language string for each timer unit. The default value\nis `en` (for English). This attribute supports all values that are supported by\nthe user's browser.\n\n#### `display-in` (optional)\n\nIf set to the value `utc`, the `display-in` attribute will convert the given\ndate to UTC.\n\n#### `offset-seconds` (optional)\n\nThe `offset-seconds` attribute specifies an integer number of seconds to shift\nthe given date.\n\n#### `data-options-\\*` (optional)\n\nThe `data-options-*` supports all the options under [Intl.DateTimeFormat.options](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/DateTimeFormat#parameters)\nparameter that specifies the formatting style to use for `localeString` format.\nValid attributes include: `data-options-date-style`, `data-options-time-style`, etc.\n\nNote that if `display-in` attrubute is set to `utc`, the value of\n`data-options-time-zone` will automatically be converted to `UTC`.\n\n### Styling\n\nYou may use the `bento-date-display` element selector to style the Bento Date Display component freely.\n\n---\n\n## Preact/React Component\n\n### Import via npm\n\n```sh\nnpm install @bentoproject/date-display\n```\n\n```javascript\nimport React from 'react';\nimport {BentoDateDisplay} from '@bentoproject/date-display/react';\nimport '@bentoproject/date-display/styles.css';\n\nfunction App() {\n  return (\n    <BentoDateDisplay\n      datetime={dateTime}\n      displayIn={displayIn}\n      locale={locale}\n      render={(date) => (\n        <div>{`ISO: ${date.iso}; locale: ${date.localeString}`}</div>\n      )}\n    />\n  );\n}\n```\n\n### Interactivity and API usage\n\nThe Bento Date Display component does not have an imperative API. However, the Bento Date Display Preact/React component does accept a `render` prop that renders the consumer's template. This `render` prop should be a function which the Bento Date Display Preact/React component can use to render its template. The `render` callback will be provided a variety of date-related parameters for consumers to interpolate in the rendered template. See the [`render` prop section](#render) for more information.\n\n### Layout and style\n\nThe Bento Date Display Preact/React component allows consumers to render their own templates. These templates may use inline styles, `<style>` tags, Preact/React components that import their own stylesheets.\n\n### Props\n\n#### `datetime`\n\nRequired prop. Denotes the date and time as a Date, String, or Number. If String, must be a standard ISO 8601 date string (e.g. 2017-08-02T15:05:05.000Z) or the string `now`. If set to `now`, it will use the time the page loaded to render its template. If Number, must be a POSIX epoch value in milliseconds.\n\n#### `displayIn`\n\nOptional prop that can be either `\"utc\"` or `\"local\"` and defaults to `\"local\"`. This prop indicates what timezone to display the date in. If set to the value `\"utc\"`, the component will convert the given date to UTC.\n\n#### `locale`\n\nAn internationalization language string for each timer unit. The default value is `en` (for English). This prop supports all values that are supported by the user's browser.\n\n#### `localeOptions`\n\nThe `localeOptions` object supports all the options under [Intl.DateTimeFormat.options](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/DateTimeFormat#parameters) parameter that specifies the formatting style to use for `localeString` format.\n\nNote that if the `displayIn` prop is set to `utc`, the value of `localeOptions.timeZone` will automatically be converted to `UTC`.\n\n#### `render`\n\nOptional callback that should render a template. The callback will be provided an object with properties/values related to the date expressed in `datetime`.\n\nBy default, the Bento Date Display component will display the [`localeString` form of the Date](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/toLocaleString) for the given locale and localeOption. See the [Returned Time Parameters section](#returned-time-parameters) for more details on how each property will be displayed.\n\n```typescript\n(dateParams: DateParams) => JSXInternal.Element\ninterface DateParams {\n  day: number;\n  dayName: string;\n  dayNameShort: string;\n  dayPeriod: string;\n  dayTwoDigit: string;\n  hour: number;\n  hour12: number;\n  hour12TwoDigit: string;\n  hourTwoDigit: string;\n  iso: string;\n  localeString: string;\n  minute: number;\n  minuteTwoDigit: string;\n  month: number;\n  monthName: string;\n  monthNameShort: string;\n  monthTwoDigit: string;\n  second: number;\n  secondTwoDigit: string;\n  timeZoneName: string;\n  timeZoneNameShort: string;\n  year: number;\n  yearTwoDi: string;\n}\n```\n\n### Returned Time Parameters\n\nThis table lists the format you can specify in your Mustache template:\n\n| Format            | Meaning                                                       |\n| ----------------- | ------------------------------------------------------------- |\n| day               | 1, 2, ...12, 13, etc.                                         |\n| dayName           | string,                                                       |\n| dayNameShort      | string,                                                       |\n| dayPeriod         | string,                                                       |\n| dayTwoDigit       | 01, 02, 03, ..., 12, 13, etc.                                 |\n| hour              | 0, 1, 2, 3, ..., 12, 13, ..., 22, 23                          |\n| hour12            | 1, 2, 3, ..., 12, 1, 2, ..., 11, 12                           |\n| hour12TwoDigit    | 01, 02, ..., 12, 01, 02, ..., 11, 12                          |\n| hourTwoDigit      | 00, 01, 02, ..., 12, 13, ..., 22, 23                          |\n| iso               | A standard ISO8601 date string e.g. 2019-01-23T15:31:21.213Z, |\n| localeString      | A string with a language sensitive representation.            |\n| minute            | 0, 1, 2, ..., 58, 59                                          |\n| minuteTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| month             | 1, 2, 3, ..., 12                                              |\n| monthName         | Internationalized month name string.                          |\n| monthNameShort    | Internationalized abbreviated month name string.,             |\n| monthTwoDigit     | 01, 02, ..., 11, 12                                           |\n| second            | 0, 1, 2, ..., 58, 59                                          |\n| secondTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| timeZoneName      | Internationalized timezone, like `Pacific Daylight Time`      |\n| timeZoneNameShort | Internationalized timezone, abbreviated, like `PST`           |\n| year              | 0, 1, 2, ..., 1999, 2000, 2001, etc.                          |\n| yearTwoDigit      | 00, 01, 02, ..., 17, 18, 19, ..., 98, 99                      |\n","readmeFilename":"README.md","gitHead":"a622b88bef291701e9f95f448f46d014e6e12d5b","bugs":{"url":"https://github.com/ampproject/amphtml/issues"},"_id":"@bentoproject/date-display@1.2304122229.0","_nodeVersion":"18.15.0","_npmVersion":"9.5.0","dist":{"integrity":"sha512-y6/Rr1V/yN5YdIyuwDwAMcANpc4xBjNRbBgwHFJWtC8rG1GAELg0zUiapl5sBLARvwTYQqRHrX2bzky61u1pjg==","shasum":"ebd48fd98450a186bd9e2bdcc424754ccef9acfa","tarball":"https://registry.npmjs.org/@bentoproject/date-display/-/date-display-1.2304122229.0.tgz","fileCount":29,"unpackedSize":677013,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIFRsEWOakToOPCJxlE0z7uPDutgVPziKlSoRKrghwVVIAiEArKyNf2Vj0kav/h7LESegn3Zcnp0NpM2DE2BoTfyb+3k="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJkN7xfACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrGmQ/9GTD9zTq8EdRNUThB1SMYA0FRYLZ7EpKwhx1SP7DuflbvRVCY\r\n4JBo/LlzNfog/6TUJ9wkVzSB0e3OY8K31255oz+UaQxocjv60LtcP0nEho7E\r\nYAdrBEUzXK94RS+U4TJR+aoLWETbA+88JjSmsOmg9liQ8kU7+uojU6gAvUCS\r\n0CCrYW3DTwKBB7L1li+GRkZGQs37zw6zC33vpmtbtNVd6dU76GcDUNrXGqdM\r\ni0GcAMUabrXjt05oDqK28kY5wdRkvSIuxoBcJfe94HPddrinuo8rgBbAI6yS\r\nbU7C8JYtXyn6gAApEz3mOmyC+9LqNqn342+XtLM72xE0O0NiXhJbMMVmYZ3f\r\nRKUywRvL2TsIAVe9nV5OrUkuQC266z+hZQWi/A/JHPHMLa7k4HUjeeDdTpp/\r\nKkN+TT+1RDpA4k1Fv7m2ebTHP83aknDIk0cEtwaadiy00HjCJvBOpnojFFl6\r\naDpwinjqvpGVpJ5CmZVEoYb8VcIbRdhG6iTRkT5+fPWqwqEuiOPpzY1QnExe\r\nh20qobedNVF90fJU7kdyY6+7uL9FZiKbVIDLhn4ae9v6ZcGD++idXkVnLl4a\r\noBZFweoh2ExmmQ3hwMe2Kpl3wyyn7XQuBTnu0T2OAe7vMS5s2R5EtNs8zwMy\r\nKs+ywfzudqWE0Mt1qyuJsS0WilURKsf3Amk=\r\n=/c6/\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"bentoprojectbot","email":"bentobot@amp.dev"},"directories":{},"maintainers":[{"name":"bentoprojectbot","email":"bentobot@amp.dev"},{"name":"kristoferbaxter","email":"kbax@me.com"},{"name":"esth","email":"esther@amp.dev"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/date-display_1.2304122229.0_1681374303352_0.11040703578918754"},"_hasShrinkwrap":false},"1.2304132133.0":{"name":"@bentoproject/date-display","version":"1.2304132133.0","description":"Displays time data that you can render in your page.","author":{"name":"Bento Authors"},"license":"Apache-2.0","main":"./dist/web-component.js","module":"./dist/web-component.module.js","exports":{".":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./web-component":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./preact":{"import":"./dist/component-preact.module.js","require":"./dist/component-preact.js"},"./react":{"import":"./dist/component-react.module.js","require":"./dist/component-react.js"},"./web-component.css":"./dist/web-component.css"},"repository":{"type":"git","url":"git+https://github.com/ampproject/amphtml.git","directory":"extensions/amp-date-display/1.0"},"homepage":"https://github.com/ampproject/amphtml/tree/main/extensions/amp-date-display/1.0","peerDependencies":{"preact":"^10.2.1","react":"^17.0.0"},"dependencies":{"@bentoproject/core":"0.2304132133.0"},"gitHead":"453223019920559443567aa4d698b7ca016b28d7","bugs":{"url":"https://github.com/ampproject/amphtml/issues"},"_id":"@bentoproject/date-display@1.2304132133.0","_nodeVersion":"18.15.0","_npmVersion":"9.5.0","dist":{"integrity":"sha512-uj9Vj7PGmm9Cqggf3pIM4HrUDewlasWTEbpQVCFVnH4VpX6AzBzk/HPGPySCgjZpZJ5l49Q2Tz8xqjURW2Sv7A==","shasum":"34adde1f4303ea4d67554db4dc17ca3766384aee","tarball":"https://registry.npmjs.org/@bentoproject/date-display/-/date-display-1.2304132133.0.tgz","fileCount":29,"unpackedSize":677013,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCbfYNap3BZqyXdBaHeH5vHnJEW2EccRWlyqKem4lxbWwIgFxPeQDJ+305JIug6KiB3Hsg9yKoyHsL+QxFWWC1jYZM="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJkOQ3bACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmoW6hAAhBzm+ezFHX9Fa39wjibIaLanQKDWnkxCuZLAEpNEjqyeYxli\r\nhe23CzzBI4ZEFJxIs9832Y8COI4O9T7fwr9zA3Sow2Sh9Cp6dpfzOVG/6qzJ\r\nHtIb/tQZsVL9bldco1WqoyUOfU1vXAcXPytmzK/c82tTy8FqOwSnp8VsahH+\r\n3OuISvmh/Ke8igkq5ejmoQ+lxSkGDIeaY4g0EoH2Q9crAKgIdej71UsgEHO8\r\nKDdu5TC3F38n43c0oAE2FIJj2jLd+9K7ssOVB9r68NHwjsHNgsaMnNFXTol1\r\nANHc3k6bp3E69LnLj1Y97a3pj8OJ9gslizOR/9mcscK/vMO0CG8ZwtoSr+A1\r\n/7x9SDKxkCm/YPyeEQVzqH6JXSH1LfdgX//HGp9xL4qjIXVBSjrh6Tp9Dh54\r\nHwbBPl0fkVwa3uy7j+4ioDI56zr9YX31qWM03szNOerArIFSSPitvRgdE7fU\r\nMfn08+ADqw5NEMXvUBNPEvtA0yf8sylwVW3jdeRuta+yfX6DnkdVzZ2kPBAm\r\ngNKbN2Odl2DEwdzBbrRATezs9XmFxrmO7Yjzkc+NfbHetsEnP8pGNpD0+VSM\r\nHbB2+BrqAWsY/hDd0tv9dvmrTZhET0+WKXjO9BE9iYG60LilCLKfSPUDUQ2Q\r\nTBWaY9bgpEhj5TbW9yweWMxpkMdjO6U4o1c=\r\n=PPzB\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"bentoprojectbot","email":"bentobot@amp.dev"},"directories":{},"maintainers":[{"name":"bentoprojectbot","email":"bentobot@amp.dev"},{"name":"kristoferbaxter","email":"kbax@me.com"},{"name":"esth","email":"esther@amp.dev"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/date-display_1.2304132133.0_1681460699658_0.4509926378980105"},"_hasShrinkwrap":false},"1.2304212144.0":{"name":"@bentoproject/date-display","version":"1.2304212144.0","description":"Displays time data that you can render in your page.","author":{"name":"Bento Authors"},"license":"Apache-2.0","main":"./dist/web-component.js","module":"./dist/web-component.module.js","exports":{".":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./web-component":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./preact":{"import":"./dist/component-preact.module.js","require":"./dist/component-preact.js"},"./react":{"import":"./dist/component-react.module.js","require":"./dist/component-react.js"},"./web-component.css":"./dist/web-component.css"},"repository":{"type":"git","url":"git+https://github.com/ampproject/amphtml.git","directory":"extensions/amp-date-display/1.0"},"homepage":"https://github.com/ampproject/amphtml/tree/main/extensions/amp-date-display/1.0","peerDependencies":{"preact":"^10.2.1","react":"^17.0.0"},"dependencies":{"@bentoproject/core":"0.2304212144.0"},"gitHead":"74060fa076cb05cd0859ed848acd32302f1e46dc","bugs":{"url":"https://github.com/ampproject/amphtml/issues"},"_id":"@bentoproject/date-display@1.2304212144.0","_nodeVersion":"18.16.0","_npmVersion":"9.5.1","dist":{"integrity":"sha512-B8io/3+K/Uo5J6IzTWz/mdxg/D1s1vGn+ERgToypyAyrQ+Oal4EXaEshZqLAMs3i336sG0RpplDu3aMK0CWaJQ==","shasum":"b9cf0718c8f59c305061e8d1ff65cd7de26246be","tarball":"https://registry.npmjs.org/@bentoproject/date-display/-/date-display-1.2304212144.0.tgz","fileCount":29,"unpackedSize":677013,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDCqcc7J2MGYtGeL96H78IydIesjSX8+QPJLun5nk3A3gIhAMRE72Iemv9iwzpBOCyfp/xSLZnbGU3Ts14IDeXQzEpJ"}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJkQ5oeACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqP6w/+LQjkYaTStkZpQbuNo+97X46qpITGYZG8Yb5h71eqrnS3EZrh\r\nFX2h85EyZA32dHu/GYalGiwpjM/UXaqxdn9zYalS1VkAATSbBuUYAsoadPyg\r\nzOMLkB5tBuBQL2XKAgVDLEsa8DLcQwkUT+600vMJajNUeGdUb38VMT4Uw/wi\r\n+L/8rVqx5vc9rZCcnzRqt0+Pc2q2ONFSaHZ+rQUwEbtk4LqS6BjykBL2PNNU\r\nO8QJJd1V5RF6Se23u5hZG1it1f5DUcER1F7aSYXP687Vsf9qAtHAmGCXs6Oa\r\nU+qgJMOlr27QG6eeOyk/UG5kLszoKhIBrPaYOVMo8FhIzgR3esG8B0IDXGQM\r\nMuqDpHYQmw8ZAfIV940FLq77Ql9JjekrjMMp7o3fjJYUjjXytwMe0rZCVLsD\r\n9Qw3MeivhxcqcyUJZ+cF3XZUrS6Nx43Z6fBCA4xFq6nTL6qEGnMV3YhmdEaz\r\n5UbLtB0UDLIBWfRSULFmg18UbbDxSru4qZ9hGfLJtUFP8cyyRUZpYGMlcM/2\r\n1CWndGlV39GfivCUT6Xny2NHNgvoJ+nuo/QWrwnk0Fw4LTUrAKc9xESOA2Mk\r\nV1gVeuJuZIw4sCQWkGbo1pF5LIiwK6+CJfGfYbPHayWRA79ZDA3F6/D6yBqq\r\n99oiQ6dlJPt0a4jBq8yFTPZru5D6Mqi8JcQ=\r\n=KZpZ\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"bentoprojectbot","email":"bentobot@amp.dev"},"directories":{},"maintainers":[{"name":"bentoprojectbot","email":"bentobot@amp.dev"},{"name":"kristoferbaxter","email":"kbax@me.com"},{"name":"esth","email":"esther@amp.dev"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/date-display_1.2304212144.0_1682151966376_0.9755249879105223"},"_hasShrinkwrap":false},"1.2304241924.0":{"name":"@bentoproject/date-display","version":"1.2304241924.0","description":"Displays time data that you can render in your page.","author":{"name":"Bento Authors"},"license":"Apache-2.0","main":"./dist/web-component.js","module":"./dist/web-component.module.js","exports":{".":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./web-component":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./preact":{"import":"./dist/component-preact.module.js","require":"./dist/component-preact.js"},"./react":{"import":"./dist/component-react.module.js","require":"./dist/component-react.js"},"./web-component.css":"./dist/web-component.css"},"repository":{"type":"git","url":"git+https://github.com/ampproject/amphtml.git","directory":"extensions/amp-date-display/1.0"},"homepage":"https://github.com/ampproject/amphtml/tree/main/extensions/amp-date-display/1.0","peerDependencies":{"preact":"^10.2.1","react":"^17.0.0"},"dependencies":{"@bentoproject/core":"0.2304241924.0"},"readme":"# Bento Date Display\n\nDisplays time data that you can render in your page. By providing specific [attributes](#attributes) in the Bento Date Display tag, the Bento Date Display extension returns a list of time parameters, which you can pass to [an amp-mustache template](../../amp-mustache/amp-mustache.md) for rendering. Refer to the [list below for each returned time parameter](#returned-time-parameters).\n\n## Web Component\n\nYou must include each Bento component's required CSS library to guarantee proper loading and before adding custom styles. Or use the light-weight pre-upgrade styles available inline. See [Layout and style](#layout-and-style).\n\n### Example: Import via npm\n\nInstall via npm:\n\n```sh\nnpm install @bentoproject/bento-date-display\n```\n\n```javascript\nimport {defineElement as defineBentoDateDisplay} from '@bentoproject/bento-date-display';\ndefineBentoDateDisplay();\n```\n\n### Include via `<script>`\n\n```html\n<script type=\"module\" src=\"https://cdn.ampproject.org/bento.mjs\" crossorigin=\"anonymous\"></script>\n<script nomodule src=\"https://cdn.ampproject.org/bento.js\" crossorigin=\"anonymous\"></script>\n<!-- Include bento-mustache.js to use mustache templates with this component -->\n<script async src=\"https://cdn.ampproject.org/v0/bento-mustache.js\"></script>\n<script type=\"module\" src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.mjs\" crossorigin=\"anonymous\"></script>\n<script nomodule src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.js\" crossorigin=\"anonymous\"></script>\n<link rel=\"stylesheet\" href=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.css\" crossorigin=\"anonymous\">\n```\n\n### Example\n\n```html\n<!DOCTYPE html>\n<html>\n  <head>\n    <script\n      type=\"module\"\n      async\n      src=\"https://cdn.ampproject.org/bento.mjs\"\n    ></script>\n    <script nomodule src=\"https://cdn.ampproject.org/bento.js\"></script>\n    <script async src=\"https://cdn.ampproject.org/v0/bento-mustache.js\"></script>\n    <script\n      type=\"module\"\n      async\n      src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.mjs\"\n    ></script>\n    <script\n      nomodule\n      async\n      src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.js\"\n    ></script>\n    <link\n      rel=\"stylesheet\"\n      type=\"text/css\"\n      href=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.css\"\n    />\n  </head>\n  <body>\n    <bento-date-display\n      datetime=\"2021-09-09T16:02:08.494Z\"\n      displayIn=\"utc\"\n      locale=\"en-GB\"\n    >\n      <template>\n        <div>ISO: {{iso}}; locale: {{localeString}}</div>\n      </template>\n    </bento-date-display>\n  </body>\n</html>\n```\n\n### Interactivity and API usage\n\nThe Bento Date Display component does not have an imperative API. However, the Bento Date Display Web Component will render a mustache-template, provided by the consumer in a `<template>` tag with `type=\"amp-mustache\"`. This template may interpolate date-related parameters. See the [Returned Time Parameters section](#returned-time-parameters) for a full list of all the available parameters.\n\n### Layout and style\n\nEach Bento component has a small CSS library you must include to guarantee proper loading without [content shifts](https://web.dev/cls/). Because of order-based specificity, you must manually ensure that stylesheets are included before any custom styles.\n\n```html\n<link rel=\"stylesheet\" type=\"text/css\" href=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.css\">\n```\n\nAlternatively, you may also make the light-weight pre-upgrade styles available inline:\n\n```html\n<style data-bento-boilerplate>\n  bento-date-display {\n    display: block;\n    overflow: hidden;\n    position: relative;\n  }\n</style>\n```\n\n### Attributes\n\n#### `datetime`\n\nThe `datetime` attribute specifies the date and time in a standard ISO 8601 date\nstring (e.g. 2017-08-02T15:05:05.000Z) or the string `now`. If set to `now`,\n`bento-date-display` will use the time the page loaded to render its template.\n\n#### `timestamp-ms`\n\nThe `timestamp-ms` attribute specifies the date and time using the number of\nmilliseconds since 1970-01-01T0:00:00.000Z\n\n#### `timestamp-seconds`\n\nThe `timestamp-seconds` attribute specifies the date and time using the number\nof seconds since 1970-01-01T0:00:00.000Z\n\n#### `locale` (optional)\n\nAn internationalization language string for each timer unit. The default value\nis `en` (for English). This attribute supports all values that are supported by\nthe user's browser.\n\n#### `display-in` (optional)\n\nIf set to the value `utc`, the `display-in` attribute will convert the given\ndate to UTC.\n\n#### `offset-seconds` (optional)\n\nThe `offset-seconds` attribute specifies an integer number of seconds to shift\nthe given date.\n\n#### `data-options-\\*` (optional)\n\nThe `data-options-*` supports all the options under [Intl.DateTimeFormat.options](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/DateTimeFormat#parameters)\nparameter that specifies the formatting style to use for `localeString` format.\nValid attributes include: `data-options-date-style`, `data-options-time-style`, etc.\n\nNote that if `display-in` attrubute is set to `utc`, the value of\n`data-options-time-zone` will automatically be converted to `UTC`.\n\n### Styling\n\nYou may use the `bento-date-display` element selector to style the Bento Date Display component freely.\n\n---\n\n## Preact/React Component\n\n### Import via npm\n\n```sh\nnpm install @bentoproject/date-display\n```\n\n```javascript\nimport React from 'react';\nimport {BentoDateDisplay} from '@bentoproject/date-display/react';\nimport '@bentoproject/date-display/styles.css';\n\nfunction App() {\n  return (\n    <BentoDateDisplay\n      datetime={dateTime}\n      displayIn={displayIn}\n      locale={locale}\n      render={(date) => (\n        <div>{`ISO: ${date.iso}; locale: ${date.localeString}`}</div>\n      )}\n    />\n  );\n}\n```\n\n### Interactivity and API usage\n\nThe Bento Date Display component does not have an imperative API. However, the Bento Date Display Preact/React component does accept a `render` prop that renders the consumer's template. This `render` prop should be a function which the Bento Date Display Preact/React component can use to render its template. The `render` callback will be provided a variety of date-related parameters for consumers to interpolate in the rendered template. See the [`render` prop section](#render) for more information.\n\n### Layout and style\n\nThe Bento Date Display Preact/React component allows consumers to render their own templates. These templates may use inline styles, `<style>` tags, Preact/React components that import their own stylesheets.\n\n### Props\n\n#### `datetime`\n\nRequired prop. Denotes the date and time as a Date, String, or Number. If String, must be a standard ISO 8601 date string (e.g. 2017-08-02T15:05:05.000Z) or the string `now`. If set to `now`, it will use the time the page loaded to render its template. If Number, must be a POSIX epoch value in milliseconds.\n\n#### `displayIn`\n\nOptional prop that can be either `\"utc\"` or `\"local\"` and defaults to `\"local\"`. This prop indicates what timezone to display the date in. If set to the value `\"utc\"`, the component will convert the given date to UTC.\n\n#### `locale`\n\nAn internationalization language string for each timer unit. The default value is `en` (for English). This prop supports all values that are supported by the user's browser.\n\n#### `localeOptions`\n\nThe `localeOptions` object supports all the options under [Intl.DateTimeFormat.options](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/DateTimeFormat#parameters) parameter that specifies the formatting style to use for `localeString` format.\n\nNote that if the `displayIn` prop is set to `utc`, the value of `localeOptions.timeZone` will automatically be converted to `UTC`.\n\n#### `render`\n\nOptional callback that should render a template. The callback will be provided an object with properties/values related to the date expressed in `datetime`.\n\nBy default, the Bento Date Display component will display the [`localeString` form of the Date](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/toLocaleString) for the given locale and localeOption. See the [Returned Time Parameters section](#returned-time-parameters) for more details on how each property will be displayed.\n\n```typescript\n(dateParams: DateParams) => JSXInternal.Element\ninterface DateParams {\n  day: number;\n  dayName: string;\n  dayNameShort: string;\n  dayPeriod: string;\n  dayTwoDigit: string;\n  hour: number;\n  hour12: number;\n  hour12TwoDigit: string;\n  hourTwoDigit: string;\n  iso: string;\n  localeString: string;\n  minute: number;\n  minuteTwoDigit: string;\n  month: number;\n  monthName: string;\n  monthNameShort: string;\n  monthTwoDigit: string;\n  second: number;\n  secondTwoDigit: string;\n  timeZoneName: string;\n  timeZoneNameShort: string;\n  year: number;\n  yearTwoDi: string;\n}\n```\n\n### Returned Time Parameters\n\nThis table lists the format you can specify in your Mustache template:\n\n| Format            | Meaning                                                       |\n| ----------------- | ------------------------------------------------------------- |\n| day               | 1, 2, ...12, 13, etc.                                         |\n| dayName           | string,                                                       |\n| dayNameShort      | string,                                                       |\n| dayPeriod         | string,                                                       |\n| dayTwoDigit       | 01, 02, 03, ..., 12, 13, etc.                                 |\n| hour              | 0, 1, 2, 3, ..., 12, 13, ..., 22, 23                          |\n| hour12            | 1, 2, 3, ..., 12, 1, 2, ..., 11, 12                           |\n| hour12TwoDigit    | 01, 02, ..., 12, 01, 02, ..., 11, 12                          |\n| hourTwoDigit      | 00, 01, 02, ..., 12, 13, ..., 22, 23                          |\n| iso               | A standard ISO8601 date string e.g. 2019-01-23T15:31:21.213Z, |\n| localeString      | A string with a language sensitive representation.            |\n| minute            | 0, 1, 2, ..., 58, 59                                          |\n| minuteTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| month             | 1, 2, 3, ..., 12                                              |\n| monthName         | Internationalized month name string.                          |\n| monthNameShort    | Internationalized abbreviated month name string.,             |\n| monthTwoDigit     | 01, 02, ..., 11, 12                                           |\n| second            | 0, 1, 2, ..., 58, 59                                          |\n| secondTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| timeZoneName      | Internationalized timezone, like `Pacific Daylight Time`      |\n| timeZoneNameShort | Internationalized timezone, abbreviated, like `PST`           |\n| year              | 0, 1, 2, ..., 1999, 2000, 2001, etc.                          |\n| yearTwoDigit      | 00, 01, 02, ..., 17, 18, 19, ..., 98, 99                      |\n","readmeFilename":"README.md","gitHead":"f962c0db0e4934715d4bbce41c2220e6cc8bc1ec","bugs":{"url":"https://github.com/ampproject/amphtml/issues"},"_id":"@bentoproject/date-display@1.2304241924.0","_nodeVersion":"18.16.0","_npmVersion":"9.5.1","dist":{"integrity":"sha512-i+RXEvkoa3GXD//rzi8agdxjkAmRxW+0ey1bRKBltFSlc1YxqwBsm6EcoNJ+09TS8adhAHPtKxiQOoCvaF79iw==","shasum":"177996a1ba9d7bd52e70337d93e96d58bbb6f529","tarball":"https://registry.npmjs.org/@bentoproject/date-display/-/date-display-1.2304241924.0.tgz","fileCount":29,"unpackedSize":677013,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIDgQ5i97u4lq7iXIQ0wZDab5mgCKwF5pZv3+DkGIVCVaAiBmdtW3V3PlBZB1F/but1ZIBgb0XzZ5Z7+mQcyOD937eQ=="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJkR466ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqedQ/6AycwWF0fX1c+IxD8moFDYKuZ190QNdPCfXuJXNS+lmxAyeEo\r\nmCFpk9B4Dc5lgPN9cYhc5sQYYTGVJfenNiGBDYxCIdPdKfzw6yXODrXTihEo\r\nlcbMZ72saMsA2Qbpw2o3TavHzqRxxHDHwQ8zH7IW/SlqRu/2rF6ARb1T1GUe\r\nwwLxNLK4okBHQoln9ousfWfbUuAq8/OUTtwS5YIC9+Josl+X8v2BqpoOIL+e\r\nIzKl9pyTWLJQmVP6KWJ/SPNqL8mjhOM3rLanPH6wqx+C+rGioiGddaoPSdro\r\nIwBiexea/W5R8HOoQ7fYdCcI4rmCVVPljBLQbXZqvTsl+wsvA5nikESgdA30\r\nUm3gG7f/OSRZ2nBpyOcCSYQNaBgdBIwJfzRbB8uu8aepCSb6ho0PqmBRSVsc\r\nZUL80mVGJ5jdzQNyOSHeHYMzJIEDQMObY3aBHlAblMGZIKItfoYRqLEdlFw1\r\n9tKuIos05LoVstuMg25mBZ2vybUn66jskfcjCWxoq8hvEglvNWMefdtnES07\r\nD+tmvF1KHU4h86SvfsHEKSYdnJeG73bc+TFo3ELv1sNVKeOBzBSTVIglIcs6\r\n/JiQq41JSP5bL9+xjOSKvOYfz2yTAifYXpdnF+fFiIuOpomAJ5k7k7c/5m43\r\ncxD4NC/AqLhuw8mW2guVFT5ZW3RoJYahv5s=\r\n=Ujvz\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"bentoprojectbot","email":"bentobot@amp.dev"},"directories":{},"maintainers":[{"name":"bentoprojectbot","email":"bentobot@amp.dev"},{"name":"kristoferbaxter","email":"kbax@me.com"},{"name":"esth","email":"esther@amp.dev"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/date-display_1.2304241924.0_1682411194356_0.2077564263647873"},"_hasShrinkwrap":false},"1.2304262219.0":{"name":"@bentoproject/date-display","version":"1.2304262219.0","description":"Displays time data that you can render in your page.","author":{"name":"Bento Authors"},"license":"Apache-2.0","main":"./dist/web-component.js","module":"./dist/web-component.module.js","exports":{".":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./web-component":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./preact":{"import":"./dist/component-preact.module.js","require":"./dist/component-preact.js"},"./react":{"import":"./dist/component-react.module.js","require":"./dist/component-react.js"},"./web-component.css":"./dist/web-component.css"},"repository":{"type":"git","url":"git+https://github.com/ampproject/amphtml.git","directory":"extensions/amp-date-display/1.0"},"homepage":"https://github.com/ampproject/amphtml/tree/main/extensions/amp-date-display/1.0","peerDependencies":{"preact":"^10.2.1","react":"^17.0.0"},"dependencies":{"@bentoproject/core":"0.2304262219.0"},"gitHead":"1e6e00ef42b6ca33dcb23d56bce6506f0b5b81b2","bugs":{"url":"https://github.com/ampproject/amphtml/issues"},"_id":"@bentoproject/date-display@1.2304262219.0","_nodeVersion":"18.16.0","_npmVersion":"9.5.1","dist":{"integrity":"sha512-Zn29ADnd0S+P8dZKG2ehzBACrEfPH3mkzuCS6zy4O1mEPEh26Aiv0ksY57cwOHwy+2oOuABolyUpqzryrvCkqg==","shasum":"6ecfc8ddb84a5b83e6830cf562ca340a3d399ce6","tarball":"https://registry.npmjs.org/@bentoproject/date-display/-/date-display-1.2304262219.0.tgz","fileCount":29,"unpackedSize":677013,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIAMV3s79S0IvtqHWCbfkwshuUeU1WoQzx33UWlDm+5rPAiEA5tm4NmqwmoTsB9nithCt37KWJsHeHrWMqYJqxkl6Zxs="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJkSjIkACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqQHA/+JP+IwcAZucczK69IrpRAntik2LTDhHHNH6l5RRvNnnLgdas4\r\nFOOXfrUlmhIZXQJxoeP24j1aA2Vc1vgEFesuepjOHI2/yu+Mp+InE+PTpKq1\r\nDa8kLjKzKzRDtagUIm8xjoV09nouMV5lWWM8odSYLb4vJ33KeYQlN2mci+wi\r\nv3+l8VIHPt1xD95UTXXeS2+jQ2EfPE+pPQSMnI8KxbMolz7gK7CDa/To8D9s\r\ngBoJq0s6+uRmENbC3OpxU/dkQKX/6B13SdTI37ozuRkaMxadDFP2WPWRQSQf\r\nAT8DzbzeDwftjuBRuUbJAjiPX2upgbgsvuPLO5uaiUAc8aX0CPE3VF67KQHY\r\ngGPZjP0zgT6JYBGKGE67qmq3kqxxsO+MrDroVeDNzqzxrYRYhxVmQbWIbTLi\r\nF8bLPpXhhUndoaEDjyz5xbAMNkh9Yfrk1UNHB78Heopn2tKMm1aAtFlCtti2\r\nMQssK9KYPaIaHFS4LwmLtedtUSzM0Lt71wRMuq+gunuTS7AvlHqA259350IW\r\ng+4eto6DHtXO0N4CiWxwA73ON2tQfCyUN17xjMWOCbrZLa0joE7PsxMtQgIc\r\nxn8FVBkK0s29aCUb0uEijiHFafkfM7OStIY6rwL9sfLX6BTS4Au3FQap4lPY\r\n27z0krhIh/W0UVc/Kd3DoxrMHHbc/NkjKOA=\r\n=7Xj4\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"bentoprojectbot","email":"bentobot@amp.dev"},"directories":{},"maintainers":[{"name":"bentoprojectbot","email":"bentobot@amp.dev"},{"name":"kristoferbaxter","email":"kbax@me.com"},{"name":"esth","email":"esther@amp.dev"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/date-display_1.2304262219.0_1682584100533_0.1436264344803564"},"_hasShrinkwrap":false},"1.2305022024.0":{"name":"@bentoproject/date-display","version":"1.2305022024.0","description":"Displays time data that you can render in your page.","author":{"name":"Bento Authors"},"license":"Apache-2.0","main":"./dist/web-component.js","module":"./dist/web-component.module.js","exports":{".":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./web-component":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./preact":{"import":"./dist/component-preact.module.js","require":"./dist/component-preact.js"},"./react":{"import":"./dist/component-react.module.js","require":"./dist/component-react.js"},"./web-component.css":"./dist/web-component.css"},"repository":{"type":"git","url":"git+https://github.com/ampproject/amphtml.git","directory":"extensions/amp-date-display/1.0"},"homepage":"https://github.com/ampproject/amphtml/tree/main/extensions/amp-date-display/1.0","peerDependencies":{"preact":"^10.2.1","react":"^17.0.0"},"dependencies":{"@bentoproject/core":"0.2305022024.0"},"readme":"# Bento Date Display\n\nDisplays time data that you can render in your page. By providing specific [attributes](#attributes) in the Bento Date Display tag, the Bento Date Display extension returns a list of time parameters, which you can pass to [an amp-mustache template](../../amp-mustache/amp-mustache.md) for rendering. Refer to the [list below for each returned time parameter](#returned-time-parameters).\n\n## Web Component\n\nYou must include each Bento component's required CSS library to guarantee proper loading and before adding custom styles. Or use the light-weight pre-upgrade styles available inline. See [Layout and style](#layout-and-style).\n\n### Example: Import via npm\n\nInstall via npm:\n\n```sh\nnpm install @bentoproject/bento-date-display\n```\n\n```javascript\nimport {defineElement as defineBentoDateDisplay} from '@bentoproject/bento-date-display';\ndefineBentoDateDisplay();\n```\n\n### Include via `<script>`\n\n```html\n<script type=\"module\" src=\"https://cdn.ampproject.org/bento.mjs\" crossorigin=\"anonymous\"></script>\n<script nomodule src=\"https://cdn.ampproject.org/bento.js\" crossorigin=\"anonymous\"></script>\n<!-- Include bento-mustache.js to use mustache templates with this component -->\n<script async src=\"https://cdn.ampproject.org/v0/bento-mustache.js\"></script>\n<script type=\"module\" src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.mjs\" crossorigin=\"anonymous\"></script>\n<script nomodule src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.js\" crossorigin=\"anonymous\"></script>\n<link rel=\"stylesheet\" href=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.css\" crossorigin=\"anonymous\">\n```\n\n### Example\n\n```html\n<!DOCTYPE html>\n<html>\n  <head>\n    <script\n      type=\"module\"\n      async\n      src=\"https://cdn.ampproject.org/bento.mjs\"\n    ></script>\n    <script nomodule src=\"https://cdn.ampproject.org/bento.js\"></script>\n    <script async src=\"https://cdn.ampproject.org/v0/bento-mustache.js\"></script>\n    <script\n      type=\"module\"\n      async\n      src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.mjs\"\n    ></script>\n    <script\n      nomodule\n      async\n      src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.js\"\n    ></script>\n    <link\n      rel=\"stylesheet\"\n      type=\"text/css\"\n      href=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.css\"\n    />\n  </head>\n  <body>\n    <bento-date-display\n      datetime=\"2021-09-09T16:02:08.494Z\"\n      displayIn=\"utc\"\n      locale=\"en-GB\"\n    >\n      <template>\n        <div>ISO: {{iso}}; locale: {{localeString}}</div>\n      </template>\n    </bento-date-display>\n  </body>\n</html>\n```\n\n### Interactivity and API usage\n\nThe Bento Date Display component does not have an imperative API. However, the Bento Date Display Web Component will render a mustache-template, provided by the consumer in a `<template>` tag with `type=\"amp-mustache\"`. This template may interpolate date-related parameters. See the [Returned Time Parameters section](#returned-time-parameters) for a full list of all the available parameters.\n\n### Layout and style\n\nEach Bento component has a small CSS library you must include to guarantee proper loading without [content shifts](https://web.dev/cls/). Because of order-based specificity, you must manually ensure that stylesheets are included before any custom styles.\n\n```html\n<link rel=\"stylesheet\" type=\"text/css\" href=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.css\">\n```\n\nAlternatively, you may also make the light-weight pre-upgrade styles available inline:\n\n```html\n<style data-bento-boilerplate>\n  bento-date-display {\n    display: block;\n    overflow: hidden;\n    position: relative;\n  }\n</style>\n```\n\n### Attributes\n\n#### `datetime`\n\nThe `datetime` attribute specifies the date and time in a standard ISO 8601 date\nstring (e.g. 2017-08-02T15:05:05.000Z) or the string `now`. If set to `now`,\n`bento-date-display` will use the time the page loaded to render its template.\n\n#### `timestamp-ms`\n\nThe `timestamp-ms` attribute specifies the date and time using the number of\nmilliseconds since 1970-01-01T0:00:00.000Z\n\n#### `timestamp-seconds`\n\nThe `timestamp-seconds` attribute specifies the date and time using the number\nof seconds since 1970-01-01T0:00:00.000Z\n\n#### `locale` (optional)\n\nAn internationalization language string for each timer unit. The default value\nis `en` (for English). This attribute supports all values that are supported by\nthe user's browser.\n\n#### `display-in` (optional)\n\nIf set to the value `utc`, the `display-in` attribute will convert the given\ndate to UTC.\n\n#### `offset-seconds` (optional)\n\nThe `offset-seconds` attribute specifies an integer number of seconds to shift\nthe given date.\n\n#### `data-options-\\*` (optional)\n\nThe `data-options-*` supports all the options under [Intl.DateTimeFormat.options](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/DateTimeFormat#parameters)\nparameter that specifies the formatting style to use for `localeString` format.\nValid attributes include: `data-options-date-style`, `data-options-time-style`, etc.\n\nNote that if `display-in` attrubute is set to `utc`, the value of\n`data-options-time-zone` will automatically be converted to `UTC`.\n\n### Styling\n\nYou may use the `bento-date-display` element selector to style the Bento Date Display component freely.\n\n---\n\n## Preact/React Component\n\n### Import via npm\n\n```sh\nnpm install @bentoproject/date-display\n```\n\n```javascript\nimport React from 'react';\nimport {BentoDateDisplay} from '@bentoproject/date-display/react';\nimport '@bentoproject/date-display/styles.css';\n\nfunction App() {\n  return (\n    <BentoDateDisplay\n      datetime={dateTime}\n      displayIn={displayIn}\n      locale={locale}\n      render={(date) => (\n        <div>{`ISO: ${date.iso}; locale: ${date.localeString}`}</div>\n      )}\n    />\n  );\n}\n```\n\n### Interactivity and API usage\n\nThe Bento Date Display component does not have an imperative API. However, the Bento Date Display Preact/React component does accept a `render` prop that renders the consumer's template. This `render` prop should be a function which the Bento Date Display Preact/React component can use to render its template. The `render` callback will be provided a variety of date-related parameters for consumers to interpolate in the rendered template. See the [`render` prop section](#render) for more information.\n\n### Layout and style\n\nThe Bento Date Display Preact/React component allows consumers to render their own templates. These templates may use inline styles, `<style>` tags, Preact/React components that import their own stylesheets.\n\n### Props\n\n#### `datetime`\n\nRequired prop. Denotes the date and time as a Date, String, or Number. If String, must be a standard ISO 8601 date string (e.g. 2017-08-02T15:05:05.000Z) or the string `now`. If set to `now`, it will use the time the page loaded to render its template. If Number, must be a POSIX epoch value in milliseconds.\n\n#### `displayIn`\n\nOptional prop that can be either `\"utc\"` or `\"local\"` and defaults to `\"local\"`. This prop indicates what timezone to display the date in. If set to the value `\"utc\"`, the component will convert the given date to UTC.\n\n#### `locale`\n\nAn internationalization language string for each timer unit. The default value is `en` (for English). This prop supports all values that are supported by the user's browser.\n\n#### `localeOptions`\n\nThe `localeOptions` object supports all the options under [Intl.DateTimeFormat.options](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/DateTimeFormat#parameters) parameter that specifies the formatting style to use for `localeString` format.\n\nNote that if the `displayIn` prop is set to `utc`, the value of `localeOptions.timeZone` will automatically be converted to `UTC`.\n\n#### `render`\n\nOptional callback that should render a template. The callback will be provided an object with properties/values related to the date expressed in `datetime`.\n\nBy default, the Bento Date Display component will display the [`localeString` form of the Date](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/toLocaleString) for the given locale and localeOption. See the [Returned Time Parameters section](#returned-time-parameters) for more details on how each property will be displayed.\n\n```typescript\n(dateParams: DateParams) => JSXInternal.Element\ninterface DateParams {\n  day: number;\n  dayName: string;\n  dayNameShort: string;\n  dayPeriod: string;\n  dayTwoDigit: string;\n  hour: number;\n  hour12: number;\n  hour12TwoDigit: string;\n  hourTwoDigit: string;\n  iso: string;\n  localeString: string;\n  minute: number;\n  minuteTwoDigit: string;\n  month: number;\n  monthName: string;\n  monthNameShort: string;\n  monthTwoDigit: string;\n  second: number;\n  secondTwoDigit: string;\n  timeZoneName: string;\n  timeZoneNameShort: string;\n  year: number;\n  yearTwoDi: string;\n}\n```\n\n### Returned Time Parameters\n\nThis table lists the format you can specify in your Mustache template:\n\n| Format            | Meaning                                                       |\n| ----------------- | ------------------------------------------------------------- |\n| day               | 1, 2, ...12, 13, etc.                                         |\n| dayName           | string,                                                       |\n| dayNameShort      | string,                                                       |\n| dayPeriod         | string,                                                       |\n| dayTwoDigit       | 01, 02, 03, ..., 12, 13, etc.                                 |\n| hour              | 0, 1, 2, 3, ..., 12, 13, ..., 22, 23                          |\n| hour12            | 1, 2, 3, ..., 12, 1, 2, ..., 11, 12                           |\n| hour12TwoDigit    | 01, 02, ..., 12, 01, 02, ..., 11, 12                          |\n| hourTwoDigit      | 00, 01, 02, ..., 12, 13, ..., 22, 23                          |\n| iso               | A standard ISO8601 date string e.g. 2019-01-23T15:31:21.213Z, |\n| localeString      | A string with a language sensitive representation.            |\n| minute            | 0, 1, 2, ..., 58, 59                                          |\n| minuteTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| month             | 1, 2, 3, ..., 12                                              |\n| monthName         | Internationalized month name string.                          |\n| monthNameShort    | Internationalized abbreviated month name string.,             |\n| monthTwoDigit     | 01, 02, ..., 11, 12                                           |\n| second            | 0, 1, 2, ..., 58, 59                                          |\n| secondTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| timeZoneName      | Internationalized timezone, like `Pacific Daylight Time`      |\n| timeZoneNameShort | Internationalized timezone, abbreviated, like `PST`           |\n| year              | 0, 1, 2, ..., 1999, 2000, 2001, etc.                          |\n| yearTwoDigit      | 00, 01, 02, ..., 17, 18, 19, ..., 98, 99                      |\n","readmeFilename":"README.md","gitHead":"275d6cbfacfdba2a626c1c3d191df16325439dc2","bugs":{"url":"https://github.com/ampproject/amphtml/issues"},"_id":"@bentoproject/date-display@1.2305022024.0","_nodeVersion":"18.16.0","_npmVersion":"9.5.1","dist":{"integrity":"sha512-0lOQohEIvQUC97LYQr+W3AUwiCUB7BhyivuPh/Lj1qMMZzi/ILYgs0XAi1faBewwEJPoW//3MXEh6wFVVUc5Jw==","shasum":"12be052c6e1e46c57c10375cb37467feef16be3f","tarball":"https://registry.npmjs.org/@bentoproject/date-display/-/date-display-1.2305022024.0.tgz","fileCount":29,"unpackedSize":681501,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDuxRDaublarsWDapvwjw3gxDfb9eF2oDAZPUvB0gDTQAIgVewHvJTpHfAdiJ2DETyxCEJE3XRKLQud8CvPzTXxR4Q="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJkUhrFACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmrgxw//YLsKa4WipI1s/s7BUJ+a2HpC/Xvtu9Pj1moUszB+F7+2/gJC\r\nmPq3mGdjDx2pZztYvzMq112dVlhfl58C3xruHm6/spYZdwT/nFMKvU2RdmFe\r\nwXMKSvI2YHX/oF1Ji6qinnVeo99vrDQa5uwcltvbFCdODFZMVRYXlgsldh2l\r\nNRgIQeIxFobYzYeFXZUKNdRt6o49V2EMisAjdvOeEbHZ/zkt1GI/JUhGF8UA\r\nndQo7NhQnFV4XamRhGPauFU3PD1wc5sqcWKbBvBR2FzeOah6iBPEyslJb9Gk\r\n9k+uGDq+js1hVGSmM8Ior6BVFD6ufWxro4FP5FR7EyZ2UJRjrSSdFx3Hqi08\r\nE6r9Gcxjcez39i4SrDtkq13fnUsSm8uH8DxdOCmKyDP91EjjI4NuTrW4TvFM\r\nr+eRPU7fH4cyIfvp4foluZRAoLjMjO8iAfWqTbGbE0WnUaIoC5YsV0hTARr6\r\nXpxpy302UR/C05FKk04XHkWFWo3I9qRih6ua6+orGKmXL5j0VXssKMyID5QW\r\nGmS2K8uSXiRYefMwWheu2VPXw8sVnZEUFNylpWur+g4JYQ1vtE1Jb9Oh0DhV\r\nrfm6wn3GCTQuiy9ixw1njQS3zAfR42gnuxM+1A1QznaF+OPNhVdqngeLzUzD\r\n/19LaH8yClwJoux4rd/y5d2JvmRbcTdbrJs=\r\n=ZXhv\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"bentoprojectbot","email":"bentobot@amp.dev"},"directories":{},"maintainers":[{"name":"bentoprojectbot","email":"bentobot@amp.dev"},{"name":"kristoferbaxter","email":"kbax@me.com"},{"name":"esth","email":"esther@amp.dev"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/date-display_1.2305022024.0_1683102405114_0.3459567483592063"},"_hasShrinkwrap":false},"1.2305051745.0":{"name":"@bentoproject/date-display","version":"1.2305051745.0","description":"Displays time data that you can render in your page.","author":{"name":"Bento Authors"},"license":"Apache-2.0","main":"./dist/web-component.js","module":"./dist/web-component.module.js","exports":{".":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./web-component":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./preact":{"import":"./dist/component-preact.module.js","require":"./dist/component-preact.js"},"./react":{"import":"./dist/component-react.module.js","require":"./dist/component-react.js"},"./web-component.css":"./dist/web-component.css"},"repository":{"type":"git","url":"git+https://github.com/ampproject/amphtml.git","directory":"extensions/amp-date-display/1.0"},"homepage":"https://github.com/ampproject/amphtml/tree/main/extensions/amp-date-display/1.0","peerDependencies":{"preact":"^10.2.1","react":"^17.0.0"},"dependencies":{"@bentoproject/core":"0.2305051745.0"},"readme":"# Bento Date Display\n\nDisplays time data that you can render in your page. By providing specific [attributes](#attributes) in the Bento Date Display tag, the Bento Date Display extension returns a list of time parameters, which you can pass to [an amp-mustache template](../../amp-mustache/amp-mustache.md) for rendering. Refer to the [list below for each returned time parameter](#returned-time-parameters).\n\n## Web Component\n\nYou must include each Bento component's required CSS library to guarantee proper loading and before adding custom styles. Or use the light-weight pre-upgrade styles available inline. See [Layout and style](#layout-and-style).\n\n### Example: Import via npm\n\nInstall via npm:\n\n```sh\nnpm install @bentoproject/bento-date-display\n```\n\n```javascript\nimport {defineElement as defineBentoDateDisplay} from '@bentoproject/bento-date-display';\ndefineBentoDateDisplay();\n```\n\n### Include via `<script>`\n\n```html\n<script type=\"module\" src=\"https://cdn.ampproject.org/bento.mjs\" crossorigin=\"anonymous\"></script>\n<script nomodule src=\"https://cdn.ampproject.org/bento.js\" crossorigin=\"anonymous\"></script>\n<!-- Include bento-mustache.js to use mustache templates with this component -->\n<script async src=\"https://cdn.ampproject.org/v0/bento-mustache.js\"></script>\n<script type=\"module\" src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.mjs\" crossorigin=\"anonymous\"></script>\n<script nomodule src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.js\" crossorigin=\"anonymous\"></script>\n<link rel=\"stylesheet\" href=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.css\" crossorigin=\"anonymous\">\n```\n\n### Example\n\n```html\n<!DOCTYPE html>\n<html>\n  <head>\n    <script\n      type=\"module\"\n      async\n      src=\"https://cdn.ampproject.org/bento.mjs\"\n    ></script>\n    <script nomodule src=\"https://cdn.ampproject.org/bento.js\"></script>\n    <script async src=\"https://cdn.ampproject.org/v0/bento-mustache.js\"></script>\n    <script\n      type=\"module\"\n      async\n      src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.mjs\"\n    ></script>\n    <script\n      nomodule\n      async\n      src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.js\"\n    ></script>\n    <link\n      rel=\"stylesheet\"\n      type=\"text/css\"\n      href=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.css\"\n    />\n  </head>\n  <body>\n    <bento-date-display\n      datetime=\"2021-09-09T16:02:08.494Z\"\n      displayIn=\"utc\"\n      locale=\"en-GB\"\n    >\n      <template>\n        <div>ISO: {{iso}}; locale: {{localeString}}</div>\n      </template>\n    </bento-date-display>\n  </body>\n</html>\n```\n\n### Interactivity and API usage\n\nThe Bento Date Display component does not have an imperative API. However, the Bento Date Display Web Component will render a mustache-template, provided by the consumer in a `<template>` tag with `type=\"amp-mustache\"`. This template may interpolate date-related parameters. See the [Returned Time Parameters section](#returned-time-parameters) for a full list of all the available parameters.\n\n### Layout and style\n\nEach Bento component has a small CSS library you must include to guarantee proper loading without [content shifts](https://web.dev/cls/). Because of order-based specificity, you must manually ensure that stylesheets are included before any custom styles.\n\n```html\n<link rel=\"stylesheet\" type=\"text/css\" href=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.css\">\n```\n\nAlternatively, you may also make the light-weight pre-upgrade styles available inline:\n\n```html\n<style data-bento-boilerplate>\n  bento-date-display {\n    display: block;\n    overflow: hidden;\n    position: relative;\n  }\n</style>\n```\n\n### Attributes\n\n#### `datetime`\n\nThe `datetime` attribute specifies the date and time in a standard ISO 8601 date\nstring (e.g. 2017-08-02T15:05:05.000Z) or the string `now`. If set to `now`,\n`bento-date-display` will use the time the page loaded to render its template.\n\n#### `timestamp-ms`\n\nThe `timestamp-ms` attribute specifies the date and time using the number of\nmilliseconds since 1970-01-01T0:00:00.000Z\n\n#### `timestamp-seconds`\n\nThe `timestamp-seconds` attribute specifies the date and time using the number\nof seconds since 1970-01-01T0:00:00.000Z\n\n#### `locale` (optional)\n\nAn internationalization language string for each timer unit. The default value\nis `en` (for English). This attribute supports all values that are supported by\nthe user's browser.\n\n#### `display-in` (optional)\n\nIf set to the value `utc`, the `display-in` attribute will convert the given\ndate to UTC.\n\n#### `offset-seconds` (optional)\n\nThe `offset-seconds` attribute specifies an integer number of seconds to shift\nthe given date.\n\n#### `data-options-\\*` (optional)\n\nThe `data-options-*` supports all the options under [Intl.DateTimeFormat.options](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/DateTimeFormat#parameters)\nparameter that specifies the formatting style to use for `localeString` format.\nValid attributes include: `data-options-date-style`, `data-options-time-style`, etc.\n\nNote that if `display-in` attrubute is set to `utc`, the value of\n`data-options-time-zone` will automatically be converted to `UTC`.\n\n### Styling\n\nYou may use the `bento-date-display` element selector to style the Bento Date Display component freely.\n\n---\n\n## Preact/React Component\n\n### Import via npm\n\n```sh\nnpm install @bentoproject/date-display\n```\n\n```javascript\nimport React from 'react';\nimport {BentoDateDisplay} from '@bentoproject/date-display/react';\nimport '@bentoproject/date-display/styles.css';\n\nfunction App() {\n  return (\n    <BentoDateDisplay\n      datetime={dateTime}\n      displayIn={displayIn}\n      locale={locale}\n      render={(date) => (\n        <div>{`ISO: ${date.iso}; locale: ${date.localeString}`}</div>\n      )}\n    />\n  );\n}\n```\n\n### Interactivity and API usage\n\nThe Bento Date Display component does not have an imperative API. However, the Bento Date Display Preact/React component does accept a `render` prop that renders the consumer's template. This `render` prop should be a function which the Bento Date Display Preact/React component can use to render its template. The `render` callback will be provided a variety of date-related parameters for consumers to interpolate in the rendered template. See the [`render` prop section](#render) for more information.\n\n### Layout and style\n\nThe Bento Date Display Preact/React component allows consumers to render their own templates. These templates may use inline styles, `<style>` tags, Preact/React components that import their own stylesheets.\n\n### Props\n\n#### `datetime`\n\nRequired prop. Denotes the date and time as a Date, String, or Number. If String, must be a standard ISO 8601 date string (e.g. 2017-08-02T15:05:05.000Z) or the string `now`. If set to `now`, it will use the time the page loaded to render its template. If Number, must be a POSIX epoch value in milliseconds.\n\n#### `displayIn`\n\nOptional prop that can be either `\"utc\"` or `\"local\"` and defaults to `\"local\"`. This prop indicates what timezone to display the date in. If set to the value `\"utc\"`, the component will convert the given date to UTC.\n\n#### `locale`\n\nAn internationalization language string for each timer unit. The default value is `en` (for English). This prop supports all values that are supported by the user's browser.\n\n#### `localeOptions`\n\nThe `localeOptions` object supports all the options under [Intl.DateTimeFormat.options](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/DateTimeFormat#parameters) parameter that specifies the formatting style to use for `localeString` format.\n\nNote that if the `displayIn` prop is set to `utc`, the value of `localeOptions.timeZone` will automatically be converted to `UTC`.\n\n#### `render`\n\nOptional callback that should render a template. The callback will be provided an object with properties/values related to the date expressed in `datetime`.\n\nBy default, the Bento Date Display component will display the [`localeString` form of the Date](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/toLocaleString) for the given locale and localeOption. See the [Returned Time Parameters section](#returned-time-parameters) for more details on how each property will be displayed.\n\n```typescript\n(dateParams: DateParams) => JSXInternal.Element\ninterface DateParams {\n  day: number;\n  dayName: string;\n  dayNameShort: string;\n  dayPeriod: string;\n  dayTwoDigit: string;\n  hour: number;\n  hour12: number;\n  hour12TwoDigit: string;\n  hourTwoDigit: string;\n  iso: string;\n  localeString: string;\n  minute: number;\n  minuteTwoDigit: string;\n  month: number;\n  monthName: string;\n  monthNameShort: string;\n  monthTwoDigit: string;\n  second: number;\n  secondTwoDigit: string;\n  timeZoneName: string;\n  timeZoneNameShort: string;\n  year: number;\n  yearTwoDi: string;\n}\n```\n\n### Returned Time Parameters\n\nThis table lists the format you can specify in your Mustache template:\n\n| Format            | Meaning                                                       |\n| ----------------- | ------------------------------------------------------------- |\n| day               | 1, 2, ...12, 13, etc.                                         |\n| dayName           | string,                                                       |\n| dayNameShort      | string,                                                       |\n| dayPeriod         | string,                                                       |\n| dayTwoDigit       | 01, 02, 03, ..., 12, 13, etc.                                 |\n| hour              | 0, 1, 2, 3, ..., 12, 13, ..., 22, 23                          |\n| hour12            | 1, 2, 3, ..., 12, 1, 2, ..., 11, 12                           |\n| hour12TwoDigit    | 01, 02, ..., 12, 01, 02, ..., 11, 12                          |\n| hourTwoDigit      | 00, 01, 02, ..., 12, 13, ..., 22, 23                          |\n| iso               | A standard ISO8601 date string e.g. 2019-01-23T15:31:21.213Z, |\n| localeString      | A string with a language sensitive representation.            |\n| minute            | 0, 1, 2, ..., 58, 59                                          |\n| minuteTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| month             | 1, 2, 3, ..., 12                                              |\n| monthName         | Internationalized month name string.                          |\n| monthNameShort    | Internationalized abbreviated month name string.,             |\n| monthTwoDigit     | 01, 02, ..., 11, 12                                           |\n| second            | 0, 1, 2, ..., 58, 59                                          |\n| secondTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| timeZoneName      | Internationalized timezone, like `Pacific Daylight Time`      |\n| timeZoneNameShort | Internationalized timezone, abbreviated, like `PST`           |\n| year              | 0, 1, 2, ..., 1999, 2000, 2001, etc.                          |\n| yearTwoDigit      | 00, 01, 02, ..., 17, 18, 19, ..., 98, 99                      |\n","readmeFilename":"README.md","gitHead":"a6aa8f04998e5f74539b892e6fde8143851f1ef6","bugs":{"url":"https://github.com/ampproject/amphtml/issues"},"_id":"@bentoproject/date-display@1.2305051745.0","_nodeVersion":"18.16.0","_npmVersion":"9.5.1","dist":{"integrity":"sha512-/sigEDaeqzwcUV2aqCgu0cTr0LdvkrsgY7brCwM8OS8/ZLnT/WL45x55WGI8eBdzfbJys3/JSCUA0ttUmyXR9w==","shasum":"a0f1b0c12feea0be1589c7964cfef9cc94d029ac","tarball":"https://registry.npmjs.org/@bentoproject/date-display/-/date-display-1.2305051745.0.tgz","fileCount":29,"unpackedSize":681501,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIFpwg9ztlHD//KrjhVDbzmVbuGL/HEpgC4YqYbdDY2oDAiAlmbVrLHIyoqtbs2deoHXA2Z5a3VO/4a5e3ePWOPoiIg=="}]},"_npmUser":{"name":"bentoprojectbot","email":"bentobot@amp.dev"},"directories":{},"maintainers":[{"name":"bentoprojectbot","email":"bentobot@amp.dev"},{"name":"kristoferbaxter","email":"kbax@me.com"},{"name":"esth","email":"esther@amp.dev"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/date-display_1.2305051745.0_1683361519815_0.0792582442852301"},"_hasShrinkwrap":false},"1.2305152039.0":{"name":"@bentoproject/date-display","version":"1.2305152039.0","description":"Displays time data that you can render in your page.","author":{"name":"Bento Authors"},"license":"Apache-2.0","main":"./dist/web-component.js","module":"./dist/web-component.module.js","exports":{".":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./web-component":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./preact":{"import":"./dist/component-preact.module.js","require":"./dist/component-preact.js"},"./react":{"import":"./dist/component-react.module.js","require":"./dist/component-react.js"},"./web-component.css":"./dist/web-component.css"},"repository":{"type":"git","url":"git+https://github.com/ampproject/amphtml.git","directory":"extensions/amp-date-display/1.0"},"homepage":"https://github.com/ampproject/amphtml/tree/main/extensions/amp-date-display/1.0","peerDependencies":{"preact":"^10.2.1","react":"^17.0.0"},"dependencies":{"@bentoproject/core":"0.2305152039.0"},"readme":"# Bento Date Display\n\nDisplays time data that you can render in your page. By providing specific [attributes](#attributes) in the Bento Date Display tag, the Bento Date Display extension returns a list of time parameters, which you can pass to [an amp-mustache template](../../amp-mustache/amp-mustache.md) for rendering. Refer to the [list below for each returned time parameter](#returned-time-parameters).\n\n## Web Component\n\nYou must include each Bento component's required CSS library to guarantee proper loading and before adding custom styles. Or use the light-weight pre-upgrade styles available inline. See [Layout and style](#layout-and-style).\n\n### Example: Import via npm\n\nInstall via npm:\n\n```sh\nnpm install @bentoproject/bento-date-display\n```\n\n```javascript\nimport {defineElement as defineBentoDateDisplay} from '@bentoproject/bento-date-display';\ndefineBentoDateDisplay();\n```\n\n### Include via `<script>`\n\n```html\n<script type=\"module\" src=\"https://cdn.ampproject.org/bento.mjs\" crossorigin=\"anonymous\"></script>\n<script nomodule src=\"https://cdn.ampproject.org/bento.js\" crossorigin=\"anonymous\"></script>\n<!-- Include bento-mustache.js to use mustache templates with this component -->\n<script async src=\"https://cdn.ampproject.org/v0/bento-mustache.js\"></script>\n<script type=\"module\" src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.mjs\" crossorigin=\"anonymous\"></script>\n<script nomodule src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.js\" crossorigin=\"anonymous\"></script>\n<link rel=\"stylesheet\" href=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.css\" crossorigin=\"anonymous\">\n```\n\n### Example\n\n```html\n<!DOCTYPE html>\n<html>\n  <head>\n    <script\n      type=\"module\"\n      async\n      src=\"https://cdn.ampproject.org/bento.mjs\"\n    ></script>\n    <script nomodule src=\"https://cdn.ampproject.org/bento.js\"></script>\n    <script async src=\"https://cdn.ampproject.org/v0/bento-mustache.js\"></script>\n    <script\n      type=\"module\"\n      async\n      src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.mjs\"\n    ></script>\n    <script\n      nomodule\n      async\n      src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.js\"\n    ></script>\n    <link\n      rel=\"stylesheet\"\n      type=\"text/css\"\n      href=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.css\"\n    />\n  </head>\n  <body>\n    <bento-date-display\n      datetime=\"2021-09-09T16:02:08.494Z\"\n      displayIn=\"utc\"\n      locale=\"en-GB\"\n    >\n      <template>\n        <div>ISO: {{iso}}; locale: {{localeString}}</div>\n      </template>\n    </bento-date-display>\n  </body>\n</html>\n```\n\n### Interactivity and API usage\n\nThe Bento Date Display component does not have an imperative API. However, the Bento Date Display Web Component will render a mustache-template, provided by the consumer in a `<template>` tag with `type=\"amp-mustache\"`. This template may interpolate date-related parameters. See the [Returned Time Parameters section](#returned-time-parameters) for a full list of all the available parameters.\n\n### Layout and style\n\nEach Bento component has a small CSS library you must include to guarantee proper loading without [content shifts](https://web.dev/cls/). Because of order-based specificity, you must manually ensure that stylesheets are included before any custom styles.\n\n```html\n<link rel=\"stylesheet\" type=\"text/css\" href=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.css\">\n```\n\nAlternatively, you may also make the light-weight pre-upgrade styles available inline:\n\n```html\n<style data-bento-boilerplate>\n  bento-date-display {\n    display: block;\n    overflow: hidden;\n    position: relative;\n  }\n</style>\n```\n\n### Attributes\n\n#### `datetime`\n\nThe `datetime` attribute specifies the date and time in a standard ISO 8601 date\nstring (e.g. 2017-08-02T15:05:05.000Z) or the string `now`. If set to `now`,\n`bento-date-display` will use the time the page loaded to render its template.\n\n#### `timestamp-ms`\n\nThe `timestamp-ms` attribute specifies the date and time using the number of\nmilliseconds since 1970-01-01T0:00:00.000Z\n\n#### `timestamp-seconds`\n\nThe `timestamp-seconds` attribute specifies the date and time using the number\nof seconds since 1970-01-01T0:00:00.000Z\n\n#### `locale` (optional)\n\nAn internationalization language string for each timer unit. The default value\nis `en` (for English). This attribute supports all values that are supported by\nthe user's browser.\n\n#### `display-in` (optional)\n\nIf set to the value `utc`, the `display-in` attribute will convert the given\ndate to UTC.\n\n#### `offset-seconds` (optional)\n\nThe `offset-seconds` attribute specifies an integer number of seconds to shift\nthe given date.\n\n#### `data-options-\\*` (optional)\n\nThe `data-options-*` supports all the options under [Intl.DateTimeFormat.options](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/DateTimeFormat#parameters)\nparameter that specifies the formatting style to use for `localeString` format.\nValid attributes include: `data-options-date-style`, `data-options-time-style`, etc.\n\nNote that if `display-in` attrubute is set to `utc`, the value of\n`data-options-time-zone` will automatically be converted to `UTC`.\n\n### Styling\n\nYou may use the `bento-date-display` element selector to style the Bento Date Display component freely.\n\n---\n\n## Preact/React Component\n\n### Import via npm\n\n```sh\nnpm install @bentoproject/date-display\n```\n\n```javascript\nimport React from 'react';\nimport {BentoDateDisplay} from '@bentoproject/date-display/react';\nimport '@bentoproject/date-display/styles.css';\n\nfunction App() {\n  return (\n    <BentoDateDisplay\n      datetime={dateTime}\n      displayIn={displayIn}\n      locale={locale}\n      render={(date) => (\n        <div>{`ISO: ${date.iso}; locale: ${date.localeString}`}</div>\n      )}\n    />\n  );\n}\n```\n\n### Interactivity and API usage\n\nThe Bento Date Display component does not have an imperative API. However, the Bento Date Display Preact/React component does accept a `render` prop that renders the consumer's template. This `render` prop should be a function which the Bento Date Display Preact/React component can use to render its template. The `render` callback will be provided a variety of date-related parameters for consumers to interpolate in the rendered template. See the [`render` prop section](#render) for more information.\n\n### Layout and style\n\nThe Bento Date Display Preact/React component allows consumers to render their own templates. These templates may use inline styles, `<style>` tags, Preact/React components that import their own stylesheets.\n\n### Props\n\n#### `datetime`\n\nRequired prop. Denotes the date and time as a Date, String, or Number. If String, must be a standard ISO 8601 date string (e.g. 2017-08-02T15:05:05.000Z) or the string `now`. If set to `now`, it will use the time the page loaded to render its template. If Number, must be a POSIX epoch value in milliseconds.\n\n#### `displayIn`\n\nOptional prop that can be either `\"utc\"` or `\"local\"` and defaults to `\"local\"`. This prop indicates what timezone to display the date in. If set to the value `\"utc\"`, the component will convert the given date to UTC.\n\n#### `locale`\n\nAn internationalization language string for each timer unit. The default value is `en` (for English). This prop supports all values that are supported by the user's browser.\n\n#### `localeOptions`\n\nThe `localeOptions` object supports all the options under [Intl.DateTimeFormat.options](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/DateTimeFormat#parameters) parameter that specifies the formatting style to use for `localeString` format.\n\nNote that if the `displayIn` prop is set to `utc`, the value of `localeOptions.timeZone` will automatically be converted to `UTC`.\n\n#### `render`\n\nOptional callback that should render a template. The callback will be provided an object with properties/values related to the date expressed in `datetime`.\n\nBy default, the Bento Date Display component will display the [`localeString` form of the Date](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/toLocaleString) for the given locale and localeOption. See the [Returned Time Parameters section](#returned-time-parameters) for more details on how each property will be displayed.\n\n```typescript\n(dateParams: DateParams) => JSXInternal.Element\ninterface DateParams {\n  day: number;\n  dayName: string;\n  dayNameShort: string;\n  dayPeriod: string;\n  dayTwoDigit: string;\n  hour: number;\n  hour12: number;\n  hour12TwoDigit: string;\n  hourTwoDigit: string;\n  iso: string;\n  localeString: string;\n  minute: number;\n  minuteTwoDigit: string;\n  month: number;\n  monthName: string;\n  monthNameShort: string;\n  monthTwoDigit: string;\n  second: number;\n  secondTwoDigit: string;\n  timeZoneName: string;\n  timeZoneNameShort: string;\n  year: number;\n  yearTwoDi: string;\n}\n```\n\n### Returned Time Parameters\n\nThis table lists the format you can specify in your Mustache template:\n\n| Format            | Meaning                                                       |\n| ----------------- | ------------------------------------------------------------- |\n| day               | 1, 2, ...12, 13, etc.                                         |\n| dayName           | string,                                                       |\n| dayNameShort      | string,                                                       |\n| dayPeriod         | string,                                                       |\n| dayTwoDigit       | 01, 02, 03, ..., 12, 13, etc.                                 |\n| hour              | 0, 1, 2, 3, ..., 12, 13, ..., 22, 23                          |\n| hour12            | 1, 2, 3, ..., 12, 1, 2, ..., 11, 12                           |\n| hour12TwoDigit    | 01, 02, ..., 12, 01, 02, ..., 11, 12                          |\n| hourTwoDigit      | 00, 01, 02, ..., 12, 13, ..., 22, 23                          |\n| iso               | A standard ISO8601 date string e.g. 2019-01-23T15:31:21.213Z, |\n| localeString      | A string with a language sensitive representation.            |\n| minute            | 0, 1, 2, ..., 58, 59                                          |\n| minuteTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| month             | 1, 2, 3, ..., 12                                              |\n| monthName         | Internationalized month name string.                          |\n| monthNameShort    | Internationalized abbreviated month name string.,             |\n| monthTwoDigit     | 01, 02, ..., 11, 12                                           |\n| second            | 0, 1, 2, ..., 58, 59                                          |\n| secondTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| timeZoneName      | Internationalized timezone, like `Pacific Daylight Time`      |\n| timeZoneNameShort | Internationalized timezone, abbreviated, like `PST`           |\n| year              | 0, 1, 2, ..., 1999, 2000, 2001, etc.                          |\n| yearTwoDigit      | 00, 01, 02, ..., 17, 18, 19, ..., 98, 99                      |\n","readmeFilename":"README.md","gitHead":"4130d5e4016e588172d11ef0a84dea019bf08e0f","bugs":{"url":"https://github.com/ampproject/amphtml/issues"},"_id":"@bentoproject/date-display@1.2305152039.0","_nodeVersion":"18.16.0","_npmVersion":"9.5.1","dist":{"integrity":"sha512-ZXa0+56sC82eQhNY63sHz1wu5ycDplTxJwxNjkMih9TA+zVwYn5PEooMGB2yqSPkoQULVDwaminoya5n0WWnLw==","shasum":"4727135229ff54d3b4b11dd0e68decc4908d5e79","tarball":"https://registry.npmjs.org/@bentoproject/date-display/-/date-display-1.2305152039.0.tgz","fileCount":29,"unpackedSize":681501,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIBBoxGWX08RUzTQCaBlmkhfgOxwMPXmiuGsD4ZRg5K2DAiEA1X3B7XBeZ6uoFIl6hRrHR6SDGdpfQFT2DkPepF9gz8Y="}]},"_npmUser":{"name":"bentoprojectbot","email":"bentobot@amp.dev"},"directories":{},"maintainers":[{"name":"bentoprojectbot","email":"bentobot@amp.dev"},{"name":"kristoferbaxter","email":"kbax@me.com"},{"name":"esth","email":"esther@amp.dev"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/date-display_1.2305152039.0_1684225614821_0.1997102675071183"},"_hasShrinkwrap":false},"1.2305182038.0":{"name":"@bentoproject/date-display","version":"1.2305182038.0","description":"Displays time data that you can render in your page.","author":{"name":"Bento Authors"},"license":"Apache-2.0","main":"./dist/web-component.js","module":"./dist/web-component.module.js","exports":{".":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./web-component":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./preact":{"import":"./dist/component-preact.module.js","require":"./dist/component-preact.js"},"./react":{"import":"./dist/component-react.module.js","require":"./dist/component-react.js"},"./web-component.css":"./dist/web-component.css"},"repository":{"type":"git","url":"git+https://github.com/ampproject/amphtml.git","directory":"extensions/amp-date-display/1.0"},"homepage":"https://github.com/ampproject/amphtml/tree/main/extensions/amp-date-display/1.0","peerDependencies":{"preact":"^10.2.1","react":"^17.0.0"},"dependencies":{"@bentoproject/core":"0.2305182038.0"},"readme":"# Bento Date Display\n\nDisplays time data that you can render in your page. By providing specific [attributes](#attributes) in the Bento Date Display tag, the Bento Date Display extension returns a list of time parameters, which you can pass to [an amp-mustache template](../../amp-mustache/amp-mustache.md) for rendering. Refer to the [list below for each returned time parameter](#returned-time-parameters).\n\n## Web Component\n\nYou must include each Bento component's required CSS library to guarantee proper loading and before adding custom styles. Or use the light-weight pre-upgrade styles available inline. See [Layout and style](#layout-and-style).\n\n### Example: Import via npm\n\nInstall via npm:\n\n```sh\nnpm install @bentoproject/bento-date-display\n```\n\n```javascript\nimport {defineElement as defineBentoDateDisplay} from '@bentoproject/bento-date-display';\ndefineBentoDateDisplay();\n```\n\n### Include via `<script>`\n\n```html\n<script type=\"module\" src=\"https://cdn.ampproject.org/bento.mjs\" crossorigin=\"anonymous\"></script>\n<script nomodule src=\"https://cdn.ampproject.org/bento.js\" crossorigin=\"anonymous\"></script>\n<!-- Include bento-mustache.js to use mustache templates with this component -->\n<script async src=\"https://cdn.ampproject.org/v0/bento-mustache.js\"></script>\n<script type=\"module\" src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.mjs\" crossorigin=\"anonymous\"></script>\n<script nomodule src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.js\" crossorigin=\"anonymous\"></script>\n<link rel=\"stylesheet\" href=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.css\" crossorigin=\"anonymous\">\n```\n\n### Example\n\n```html\n<!DOCTYPE html>\n<html>\n  <head>\n    <script\n      type=\"module\"\n      async\n      src=\"https://cdn.ampproject.org/bento.mjs\"\n    ></script>\n    <script nomodule src=\"https://cdn.ampproject.org/bento.js\"></script>\n    <script async src=\"https://cdn.ampproject.org/v0/bento-mustache.js\"></script>\n    <script\n      type=\"module\"\n      async\n      src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.mjs\"\n    ></script>\n    <script\n      nomodule\n      async\n      src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.js\"\n    ></script>\n    <link\n      rel=\"stylesheet\"\n      type=\"text/css\"\n      href=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.css\"\n    />\n  </head>\n  <body>\n    <bento-date-display\n      datetime=\"2021-09-09T16:02:08.494Z\"\n      displayIn=\"utc\"\n      locale=\"en-GB\"\n    >\n      <template>\n        <div>ISO: {{iso}}; locale: {{localeString}}</div>\n      </template>\n    </bento-date-display>\n  </body>\n</html>\n```\n\n### Interactivity and API usage\n\nThe Bento Date Display component does not have an imperative API. However, the Bento Date Display Web Component will render a mustache-template, provided by the consumer in a `<template>` tag with `type=\"amp-mustache\"`. This template may interpolate date-related parameters. See the [Returned Time Parameters section](#returned-time-parameters) for a full list of all the available parameters.\n\n### Layout and style\n\nEach Bento component has a small CSS library you must include to guarantee proper loading without [content shifts](https://web.dev/cls/). Because of order-based specificity, you must manually ensure that stylesheets are included before any custom styles.\n\n```html\n<link rel=\"stylesheet\" type=\"text/css\" href=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.css\">\n```\n\nAlternatively, you may also make the light-weight pre-upgrade styles available inline:\n\n```html\n<style data-bento-boilerplate>\n  bento-date-display {\n    display: block;\n    overflow: hidden;\n    position: relative;\n  }\n</style>\n```\n\n### Attributes\n\n#### `datetime`\n\nThe `datetime` attribute specifies the date and time in a standard ISO 8601 date\nstring (e.g. 2017-08-02T15:05:05.000Z) or the string `now`. If set to `now`,\n`bento-date-display` will use the time the page loaded to render its template.\n\n#### `timestamp-ms`\n\nThe `timestamp-ms` attribute specifies the date and time using the number of\nmilliseconds since 1970-01-01T0:00:00.000Z\n\n#### `timestamp-seconds`\n\nThe `timestamp-seconds` attribute specifies the date and time using the number\nof seconds since 1970-01-01T0:00:00.000Z\n\n#### `locale` (optional)\n\nAn internationalization language string for each timer unit. The default value\nis `en` (for English). This attribute supports all values that are supported by\nthe user's browser.\n\n#### `display-in` (optional)\n\nIf set to the value `utc`, the `display-in` attribute will convert the given\ndate to UTC.\n\n#### `offset-seconds` (optional)\n\nThe `offset-seconds` attribute specifies an integer number of seconds to shift\nthe given date.\n\n#### `data-options-\\*` (optional)\n\nThe `data-options-*` supports all the options under [Intl.DateTimeFormat.options](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/DateTimeFormat#parameters)\nparameter that specifies the formatting style to use for `localeString` format.\nValid attributes include: `data-options-date-style`, `data-options-time-style`, etc.\n\nNote that if `display-in` attrubute is set to `utc`, the value of\n`data-options-time-zone` will automatically be converted to `UTC`.\n\n### Styling\n\nYou may use the `bento-date-display` element selector to style the Bento Date Display component freely.\n\n---\n\n## Preact/React Component\n\n### Import via npm\n\n```sh\nnpm install @bentoproject/date-display\n```\n\n```javascript\nimport React from 'react';\nimport {BentoDateDisplay} from '@bentoproject/date-display/react';\nimport '@bentoproject/date-display/styles.css';\n\nfunction App() {\n  return (\n    <BentoDateDisplay\n      datetime={dateTime}\n      displayIn={displayIn}\n      locale={locale}\n      render={(date) => (\n        <div>{`ISO: ${date.iso}; locale: ${date.localeString}`}</div>\n      )}\n    />\n  );\n}\n```\n\n### Interactivity and API usage\n\nThe Bento Date Display component does not have an imperative API. However, the Bento Date Display Preact/React component does accept a `render` prop that renders the consumer's template. This `render` prop should be a function which the Bento Date Display Preact/React component can use to render its template. The `render` callback will be provided a variety of date-related parameters for consumers to interpolate in the rendered template. See the [`render` prop section](#render) for more information.\n\n### Layout and style\n\nThe Bento Date Display Preact/React component allows consumers to render their own templates. These templates may use inline styles, `<style>` tags, Preact/React components that import their own stylesheets.\n\n### Props\n\n#### `datetime`\n\nRequired prop. Denotes the date and time as a Date, String, or Number. If String, must be a standard ISO 8601 date string (e.g. 2017-08-02T15:05:05.000Z) or the string `now`. If set to `now`, it will use the time the page loaded to render its template. If Number, must be a POSIX epoch value in milliseconds.\n\n#### `displayIn`\n\nOptional prop that can be either `\"utc\"` or `\"local\"` and defaults to `\"local\"`. This prop indicates what timezone to display the date in. If set to the value `\"utc\"`, the component will convert the given date to UTC.\n\n#### `locale`\n\nAn internationalization language string for each timer unit. The default value is `en` (for English). This prop supports all values that are supported by the user's browser.\n\n#### `localeOptions`\n\nThe `localeOptions` object supports all the options under [Intl.DateTimeFormat.options](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/DateTimeFormat#parameters) parameter that specifies the formatting style to use for `localeString` format.\n\nNote that if the `displayIn` prop is set to `utc`, the value of `localeOptions.timeZone` will automatically be converted to `UTC`.\n\n#### `render`\n\nOptional callback that should render a template. The callback will be provided an object with properties/values related to the date expressed in `datetime`.\n\nBy default, the Bento Date Display component will display the [`localeString` form of the Date](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/toLocaleString) for the given locale and localeOption. See the [Returned Time Parameters section](#returned-time-parameters) for more details on how each property will be displayed.\n\n```typescript\n(dateParams: DateParams) => JSXInternal.Element\ninterface DateParams {\n  day: number;\n  dayName: string;\n  dayNameShort: string;\n  dayPeriod: string;\n  dayTwoDigit: string;\n  hour: number;\n  hour12: number;\n  hour12TwoDigit: string;\n  hourTwoDigit: string;\n  iso: string;\n  localeString: string;\n  minute: number;\n  minuteTwoDigit: string;\n  month: number;\n  monthName: string;\n  monthNameShort: string;\n  monthTwoDigit: string;\n  second: number;\n  secondTwoDigit: string;\n  timeZoneName: string;\n  timeZoneNameShort: string;\n  year: number;\n  yearTwoDi: string;\n}\n```\n\n### Returned Time Parameters\n\nThis table lists the format you can specify in your Mustache template:\n\n| Format            | Meaning                                                       |\n| ----------------- | ------------------------------------------------------------- |\n| day               | 1, 2, ...12, 13, etc.                                         |\n| dayName           | string,                                                       |\n| dayNameShort      | string,                                                       |\n| dayPeriod         | string,                                                       |\n| dayTwoDigit       | 01, 02, 03, ..., 12, 13, etc.                                 |\n| hour              | 0, 1, 2, 3, ..., 12, 13, ..., 22, 23                          |\n| hour12            | 1, 2, 3, ..., 12, 1, 2, ..., 11, 12                           |\n| hour12TwoDigit    | 01, 02, ..., 12, 01, 02, ..., 11, 12                          |\n| hourTwoDigit      | 00, 01, 02, ..., 12, 13, ..., 22, 23                          |\n| iso               | A standard ISO8601 date string e.g. 2019-01-23T15:31:21.213Z, |\n| localeString      | A string with a language sensitive representation.            |\n| minute            | 0, 1, 2, ..., 58, 59                                          |\n| minuteTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| month             | 1, 2, 3, ..., 12                                              |\n| monthName         | Internationalized month name string.                          |\n| monthNameShort    | Internationalized abbreviated month name string.,             |\n| monthTwoDigit     | 01, 02, ..., 11, 12                                           |\n| second            | 0, 1, 2, ..., 58, 59                                          |\n| secondTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| timeZoneName      | Internationalized timezone, like `Pacific Daylight Time`      |\n| timeZoneNameShort | Internationalized timezone, abbreviated, like `PST`           |\n| year              | 0, 1, 2, ..., 1999, 2000, 2001, etc.                          |\n| yearTwoDigit      | 00, 01, 02, ..., 17, 18, 19, ..., 98, 99                      |\n","readmeFilename":"README.md","gitHead":"885f40954f2783f7451ec4e195b909ce170466fc","bugs":{"url":"https://github.com/ampproject/amphtml/issues"},"_id":"@bentoproject/date-display@1.2305182038.0","_nodeVersion":"18.16.0","_npmVersion":"9.5.1","dist":{"integrity":"sha512-48JgL3eTzMzeZXJZ1BTgHsRQSWbYhbek7GB0xjQ8UTGsrZOp9Pfk/FCtBJ9n5Wsw/L4toGmgSDVtmoTCXy2mdw==","shasum":"f9b9bd6f0619aed3521f3978c120cb95733cb497","tarball":"https://registry.npmjs.org/@bentoproject/date-display/-/date-display-1.2305182038.0.tgz","fileCount":29,"unpackedSize":681501,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQD0Q9f3/hUQNqEEM1W4U7pf5xFT1tG9JaI5yPldEGAHgwIgPBSWIjzjfuNTuwKpD2i5+8GGOqj1iGbtOVFG6o6oEDo="}]},"_npmUser":{"name":"bentoprojectbot","email":"bentobot@amp.dev"},"directories":{},"maintainers":[{"name":"bentoprojectbot","email":"bentobot@amp.dev"},{"name":"kristoferbaxter","email":"kbax@me.com"},{"name":"esth","email":"esther@amp.dev"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/date-display_1.2305182038.0_1684484835420_0.4359498541014286"},"_hasShrinkwrap":false},"1.2305221508.0":{"name":"@bentoproject/date-display","version":"1.2305221508.0","description":"Displays time data that you can render in your page.","author":{"name":"Bento Authors"},"license":"Apache-2.0","main":"./dist/web-component.js","module":"./dist/web-component.module.js","exports":{".":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./web-component":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./preact":{"import":"./dist/component-preact.module.js","require":"./dist/component-preact.js"},"./react":{"import":"./dist/component-react.module.js","require":"./dist/component-react.js"},"./web-component.css":"./dist/web-component.css"},"repository":{"type":"git","url":"git+https://github.com/ampproject/amphtml.git","directory":"extensions/amp-date-display/1.0"},"homepage":"https://github.com/ampproject/amphtml/tree/main/extensions/amp-date-display/1.0","peerDependencies":{"preact":"^10.2.1","react":"^17.0.0"},"dependencies":{"@bentoproject/core":"0.2305221508.0"},"readme":"# Bento Date Display\n\nDisplays time data that you can render in your page. By providing specific [attributes](#attributes) in the Bento Date Display tag, the Bento Date Display extension returns a list of time parameters, which you can pass to [an amp-mustache template](../../amp-mustache/amp-mustache.md) for rendering. Refer to the [list below for each returned time parameter](#returned-time-parameters).\n\n## Web Component\n\nYou must include each Bento component's required CSS library to guarantee proper loading and before adding custom styles. Or use the light-weight pre-upgrade styles available inline. See [Layout and style](#layout-and-style).\n\n### Example: Import via npm\n\nInstall via npm:\n\n```sh\nnpm install @bentoproject/bento-date-display\n```\n\n```javascript\nimport {defineElement as defineBentoDateDisplay} from '@bentoproject/bento-date-display';\ndefineBentoDateDisplay();\n```\n\n### Include via `<script>`\n\n```html\n<script type=\"module\" src=\"https://cdn.ampproject.org/bento.mjs\" crossorigin=\"anonymous\"></script>\n<script nomodule src=\"https://cdn.ampproject.org/bento.js\" crossorigin=\"anonymous\"></script>\n<!-- Include bento-mustache.js to use mustache templates with this component -->\n<script async src=\"https://cdn.ampproject.org/v0/bento-mustache.js\"></script>\n<script type=\"module\" src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.mjs\" crossorigin=\"anonymous\"></script>\n<script nomodule src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.js\" crossorigin=\"anonymous\"></script>\n<link rel=\"stylesheet\" href=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.css\" crossorigin=\"anonymous\">\n```\n\n### Example\n\n```html\n<!DOCTYPE html>\n<html>\n  <head>\n    <script\n      type=\"module\"\n      async\n      src=\"https://cdn.ampproject.org/bento.mjs\"\n    ></script>\n    <script nomodule src=\"https://cdn.ampproject.org/bento.js\"></script>\n    <script async src=\"https://cdn.ampproject.org/v0/bento-mustache.js\"></script>\n    <script\n      type=\"module\"\n      async\n      src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.mjs\"\n    ></script>\n    <script\n      nomodule\n      async\n      src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.js\"\n    ></script>\n    <link\n      rel=\"stylesheet\"\n      type=\"text/css\"\n      href=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.css\"\n    />\n  </head>\n  <body>\n    <bento-date-display\n      datetime=\"2021-09-09T16:02:08.494Z\"\n      displayIn=\"utc\"\n      locale=\"en-GB\"\n    >\n      <template>\n        <div>ISO: {{iso}}; locale: {{localeString}}</div>\n      </template>\n    </bento-date-display>\n  </body>\n</html>\n```\n\n### Interactivity and API usage\n\nThe Bento Date Display component does not have an imperative API. However, the Bento Date Display Web Component will render a mustache-template, provided by the consumer in a `<template>` tag with `type=\"amp-mustache\"`. This template may interpolate date-related parameters. See the [Returned Time Parameters section](#returned-time-parameters) for a full list of all the available parameters.\n\n### Layout and style\n\nEach Bento component has a small CSS library you must include to guarantee proper loading without [content shifts](https://web.dev/cls/). Because of order-based specificity, you must manually ensure that stylesheets are included before any custom styles.\n\n```html\n<link rel=\"stylesheet\" type=\"text/css\" href=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.css\">\n```\n\nAlternatively, you may also make the light-weight pre-upgrade styles available inline:\n\n```html\n<style data-bento-boilerplate>\n  bento-date-display {\n    display: block;\n    overflow: hidden;\n    position: relative;\n  }\n</style>\n```\n\n### Attributes\n\n#### `datetime`\n\nThe `datetime` attribute specifies the date and time in a standard ISO 8601 date\nstring (e.g. 2017-08-02T15:05:05.000Z) or the string `now`. If set to `now`,\n`bento-date-display` will use the time the page loaded to render its template.\n\n#### `timestamp-ms`\n\nThe `timestamp-ms` attribute specifies the date and time using the number of\nmilliseconds since 1970-01-01T0:00:00.000Z\n\n#### `timestamp-seconds`\n\nThe `timestamp-seconds` attribute specifies the date and time using the number\nof seconds since 1970-01-01T0:00:00.000Z\n\n#### `locale` (optional)\n\nAn internationalization language string for each timer unit. The default value\nis `en` (for English). This attribute supports all values that are supported by\nthe user's browser.\n\n#### `display-in` (optional)\n\nIf set to the value `utc`, the `display-in` attribute will convert the given\ndate to UTC.\n\n#### `offset-seconds` (optional)\n\nThe `offset-seconds` attribute specifies an integer number of seconds to shift\nthe given date.\n\n#### `data-options-\\*` (optional)\n\nThe `data-options-*` supports all the options under [Intl.DateTimeFormat.options](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/DateTimeFormat#parameters)\nparameter that specifies the formatting style to use for `localeString` format.\nValid attributes include: `data-options-date-style`, `data-options-time-style`, etc.\n\nNote that if `display-in` attrubute is set to `utc`, the value of\n`data-options-time-zone` will automatically be converted to `UTC`.\n\n### Styling\n\nYou may use the `bento-date-display` element selector to style the Bento Date Display component freely.\n\n---\n\n## Preact/React Component\n\n### Import via npm\n\n```sh\nnpm install @bentoproject/date-display\n```\n\n```javascript\nimport React from 'react';\nimport {BentoDateDisplay} from '@bentoproject/date-display/react';\nimport '@bentoproject/date-display/styles.css';\n\nfunction App() {\n  return (\n    <BentoDateDisplay\n      datetime={dateTime}\n      displayIn={displayIn}\n      locale={locale}\n      render={(date) => (\n        <div>{`ISO: ${date.iso}; locale: ${date.localeString}`}</div>\n      )}\n    />\n  );\n}\n```\n\n### Interactivity and API usage\n\nThe Bento Date Display component does not have an imperative API. However, the Bento Date Display Preact/React component does accept a `render` prop that renders the consumer's template. This `render` prop should be a function which the Bento Date Display Preact/React component can use to render its template. The `render` callback will be provided a variety of date-related parameters for consumers to interpolate in the rendered template. See the [`render` prop section](#render) for more information.\n\n### Layout and style\n\nThe Bento Date Display Preact/React component allows consumers to render their own templates. These templates may use inline styles, `<style>` tags, Preact/React components that import their own stylesheets.\n\n### Props\n\n#### `datetime`\n\nRequired prop. Denotes the date and time as a Date, String, or Number. If String, must be a standard ISO 8601 date string (e.g. 2017-08-02T15:05:05.000Z) or the string `now`. If set to `now`, it will use the time the page loaded to render its template. If Number, must be a POSIX epoch value in milliseconds.\n\n#### `displayIn`\n\nOptional prop that can be either `\"utc\"` or `\"local\"` and defaults to `\"local\"`. This prop indicates what timezone to display the date in. If set to the value `\"utc\"`, the component will convert the given date to UTC.\n\n#### `locale`\n\nAn internationalization language string for each timer unit. The default value is `en` (for English). This prop supports all values that are supported by the user's browser.\n\n#### `localeOptions`\n\nThe `localeOptions` object supports all the options under [Intl.DateTimeFormat.options](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/DateTimeFormat#parameters) parameter that specifies the formatting style to use for `localeString` format.\n\nNote that if the `displayIn` prop is set to `utc`, the value of `localeOptions.timeZone` will automatically be converted to `UTC`.\n\n#### `render`\n\nOptional callback that should render a template. The callback will be provided an object with properties/values related to the date expressed in `datetime`.\n\nBy default, the Bento Date Display component will display the [`localeString` form of the Date](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/toLocaleString) for the given locale and localeOption. See the [Returned Time Parameters section](#returned-time-parameters) for more details on how each property will be displayed.\n\n```typescript\n(dateParams: DateParams) => JSXInternal.Element\ninterface DateParams {\n  day: number;\n  dayName: string;\n  dayNameShort: string;\n  dayPeriod: string;\n  dayTwoDigit: string;\n  hour: number;\n  hour12: number;\n  hour12TwoDigit: string;\n  hourTwoDigit: string;\n  iso: string;\n  localeString: string;\n  minute: number;\n  minuteTwoDigit: string;\n  month: number;\n  monthName: string;\n  monthNameShort: string;\n  monthTwoDigit: string;\n  second: number;\n  secondTwoDigit: string;\n  timeZoneName: string;\n  timeZoneNameShort: string;\n  year: number;\n  yearTwoDi: string;\n}\n```\n\n### Returned Time Parameters\n\nThis table lists the format you can specify in your Mustache template:\n\n| Format            | Meaning                                                       |\n| ----------------- | ------------------------------------------------------------- |\n| day               | 1, 2, ...12, 13, etc.                                         |\n| dayName           | string,                                                       |\n| dayNameShort      | string,                                                       |\n| dayPeriod         | string,                                                       |\n| dayTwoDigit       | 01, 02, 03, ..., 12, 13, etc.                                 |\n| hour              | 0, 1, 2, 3, ..., 12, 13, ..., 22, 23                          |\n| hour12            | 1, 2, 3, ..., 12, 1, 2, ..., 11, 12                           |\n| hour12TwoDigit    | 01, 02, ..., 12, 01, 02, ..., 11, 12                          |\n| hourTwoDigit      | 00, 01, 02, ..., 12, 13, ..., 22, 23                          |\n| iso               | A standard ISO8601 date string e.g. 2019-01-23T15:31:21.213Z, |\n| localeString      | A string with a language sensitive representation.            |\n| minute            | 0, 1, 2, ..., 58, 59                                          |\n| minuteTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| month             | 1, 2, 3, ..., 12                                              |\n| monthName         | Internationalized month name string.                          |\n| monthNameShort    | Internationalized abbreviated month name string.,             |\n| monthTwoDigit     | 01, 02, ..., 11, 12                                           |\n| second            | 0, 1, 2, ..., 58, 59                                          |\n| secondTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| timeZoneName      | Internationalized timezone, like `Pacific Daylight Time`      |\n| timeZoneNameShort | Internationalized timezone, abbreviated, like `PST`           |\n| year              | 0, 1, 2, ..., 1999, 2000, 2001, etc.                          |\n| yearTwoDigit      | 00, 01, 02, ..., 17, 18, 19, ..., 98, 99                      |\n","readmeFilename":"README.md","gitHead":"f6a823a49114a57cdbf351ab983baaf0bdf4bd1d","bugs":{"url":"https://github.com/ampproject/amphtml/issues"},"_id":"@bentoproject/date-display@1.2305221508.0","_nodeVersion":"18.16.0","_npmVersion":"9.5.1","dist":{"integrity":"sha512-5X7EsVPE2DjSkDSqAELKeoHbmLAeK1TmlodZk+aUz3WyX11y00yKcr9wnHf4t7jmgXTgMNnK12tTTVORUTrb1g==","shasum":"47c3dd8927f4e1b8217eb87d6c84a322256271de","tarball":"https://registry.npmjs.org/@bentoproject/date-display/-/date-display-1.2305221508.0.tgz","fileCount":29,"unpackedSize":681501,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIFd8meNliL1iuclYl3giVdFNrm0KdxSkcQpwERjVNWzKAiEAjYFumjL+ZwxHCLxncB+qrA4QX9plOpUdGQsRE/uVFow="}]},"_npmUser":{"name":"bentoprojectbot","email":"bentobot@amp.dev"},"directories":{},"maintainers":[{"name":"bentoprojectbot","email":"bentobot@amp.dev"},{"name":"kristoferbaxter","email":"kbax@me.com"},{"name":"esth","email":"esther@amp.dev"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/date-display_1.2305221508.0_1684830360184_0.6805018084943018"},"_hasShrinkwrap":false},"1.2305051745.1":{"name":"@bentoproject/date-display","version":"1.2305051745.1","description":"Displays time data that you can render in your page.","author":{"name":"Bento Authors"},"license":"Apache-2.0","main":"./dist/web-component.js","module":"./dist/web-component.module.js","exports":{".":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./web-component":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./preact":{"import":"./dist/component-preact.module.js","require":"./dist/component-preact.js"},"./react":{"import":"./dist/component-react.module.js","require":"./dist/component-react.js"},"./web-component.css":"./dist/web-component.css"},"repository":{"type":"git","url":"git+https://github.com/ampproject/amphtml.git","directory":"extensions/amp-date-display/1.0"},"homepage":"https://github.com/ampproject/amphtml/tree/main/extensions/amp-date-display/1.0","peerDependencies":{"preact":"^10.2.1","react":"^17.0.0"},"dependencies":{"@bentoproject/core":"0.2305051745.1"},"gitHead":"c7c16e5e6f51fa01e6e31b5edddf60feacb1ebb1","bugs":{"url":"https://github.com/ampproject/amphtml/issues"},"_id":"@bentoproject/date-display@1.2305051745.1","_nodeVersion":"18.16.0","_npmVersion":"9.5.1","dist":{"integrity":"sha512-pfBpMffsqVB0yEQc/bklXKRY+pjI8K1Vws708jmZm71hHqhGiRzllbs0g4JabcHv2KCLnWCHkdQNZw4xX9COxA==","shasum":"dd515dbb6e998cf2795f6dc7834ad2801ca167f3","tarball":"https://registry.npmjs.org/@bentoproject/date-display/-/date-display-1.2305051745.1.tgz","fileCount":29,"unpackedSize":681501,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDhI0A6EjUxfW5Pbk1y7aFaMHYIUqFnSgquNOd02hc22AIgGu6u8Ien6WHSqzIB0sLZw9z4CIKgJn1FWljvK94yphM="}]},"_npmUser":{"name":"bentoprojectbot","email":"bentobot@amp.dev"},"directories":{},"maintainers":[{"name":"bentoprojectbot","email":"bentobot@amp.dev"},{"name":"kristoferbaxter","email":"kbax@me.com"},{"name":"esth","email":"esther@amp.dev"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/date-display_1.2305051745.1_1684883052761_0.38247927611348254"},"_hasShrinkwrap":false},"1.2305232041.0":{"name":"@bentoproject/date-display","version":"1.2305232041.0","description":"Displays time data that you can render in your page.","author":{"name":"Bento Authors"},"license":"Apache-2.0","main":"./dist/web-component.js","module":"./dist/web-component.module.js","exports":{".":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./web-component":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./preact":{"import":"./dist/component-preact.module.js","require":"./dist/component-preact.js"},"./react":{"import":"./dist/component-react.module.js","require":"./dist/component-react.js"},"./web-component.css":"./dist/web-component.css"},"repository":{"type":"git","url":"git+https://github.com/ampproject/amphtml.git","directory":"extensions/amp-date-display/1.0"},"homepage":"https://github.com/ampproject/amphtml/tree/main/extensions/amp-date-display/1.0","peerDependencies":{"preact":"^10.2.1","react":"^17.0.0"},"dependencies":{"@bentoproject/core":"0.2305232041.0"},"readme":"# Bento Date Display\n\nDisplays time data that you can render in your page. By providing specific [attributes](#attributes) in the Bento Date Display tag, the Bento Date Display extension returns a list of time parameters, which you can pass to [an amp-mustache template](../../amp-mustache/amp-mustache.md) for rendering. Refer to the [list below for each returned time parameter](#returned-time-parameters).\n\n## Web Component\n\nYou must include each Bento component's required CSS library to guarantee proper loading and before adding custom styles. Or use the light-weight pre-upgrade styles available inline. See [Layout and style](#layout-and-style).\n\n### Example: Import via npm\n\nInstall via npm:\n\n```sh\nnpm install @bentoproject/bento-date-display\n```\n\n```javascript\nimport {defineElement as defineBentoDateDisplay} from '@bentoproject/bento-date-display';\ndefineBentoDateDisplay();\n```\n\n### Include via `<script>`\n\n```html\n<script type=\"module\" src=\"https://cdn.ampproject.org/bento.mjs\" crossorigin=\"anonymous\"></script>\n<script nomodule src=\"https://cdn.ampproject.org/bento.js\" crossorigin=\"anonymous\"></script>\n<!-- Include bento-mustache.js to use mustache templates with this component -->\n<script async src=\"https://cdn.ampproject.org/v0/bento-mustache.js\"></script>\n<script type=\"module\" src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.mjs\" crossorigin=\"anonymous\"></script>\n<script nomodule src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.js\" crossorigin=\"anonymous\"></script>\n<link rel=\"stylesheet\" href=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.css\" crossorigin=\"anonymous\">\n```\n\n### Example\n\n```html\n<!DOCTYPE html>\n<html>\n  <head>\n    <script\n      type=\"module\"\n      async\n      src=\"https://cdn.ampproject.org/bento.mjs\"\n    ></script>\n    <script nomodule src=\"https://cdn.ampproject.org/bento.js\"></script>\n    <script async src=\"https://cdn.ampproject.org/v0/bento-mustache.js\"></script>\n    <script\n      type=\"module\"\n      async\n      src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.mjs\"\n    ></script>\n    <script\n      nomodule\n      async\n      src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.js\"\n    ></script>\n    <link\n      rel=\"stylesheet\"\n      type=\"text/css\"\n      href=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.css\"\n    />\n  </head>\n  <body>\n    <bento-date-display\n      datetime=\"2021-09-09T16:02:08.494Z\"\n      displayIn=\"utc\"\n      locale=\"en-GB\"\n    >\n      <template>\n        <div>ISO: {{iso}}; locale: {{localeString}}</div>\n      </template>\n    </bento-date-display>\n  </body>\n</html>\n```\n\n### Interactivity and API usage\n\nThe Bento Date Display component does not have an imperative API. However, the Bento Date Display Web Component will render a mustache-template, provided by the consumer in a `<template>` tag with `type=\"amp-mustache\"`. This template may interpolate date-related parameters. See the [Returned Time Parameters section](#returned-time-parameters) for a full list of all the available parameters.\n\n### Layout and style\n\nEach Bento component has a small CSS library you must include to guarantee proper loading without [content shifts](https://web.dev/cls/). Because of order-based specificity, you must manually ensure that stylesheets are included before any custom styles.\n\n```html\n<link rel=\"stylesheet\" type=\"text/css\" href=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.css\">\n```\n\nAlternatively, you may also make the light-weight pre-upgrade styles available inline:\n\n```html\n<style data-bento-boilerplate>\n  bento-date-display {\n    display: block;\n    overflow: hidden;\n    position: relative;\n  }\n</style>\n```\n\n### Attributes\n\n#### `datetime`\n\nThe `datetime` attribute specifies the date and time in a standard ISO 8601 date\nstring (e.g. 2017-08-02T15:05:05.000Z) or the string `now`. If set to `now`,\n`bento-date-display` will use the time the page loaded to render its template.\n\n#### `timestamp-ms`\n\nThe `timestamp-ms` attribute specifies the date and time using the number of\nmilliseconds since 1970-01-01T0:00:00.000Z\n\n#### `timestamp-seconds`\n\nThe `timestamp-seconds` attribute specifies the date and time using the number\nof seconds since 1970-01-01T0:00:00.000Z\n\n#### `locale` (optional)\n\nAn internationalization language string for each timer unit. The default value\nis `en` (for English). This attribute supports all values that are supported by\nthe user's browser.\n\n#### `display-in` (optional)\n\nIf set to the value `utc`, the `display-in` attribute will convert the given\ndate to UTC.\n\n#### `offset-seconds` (optional)\n\nThe `offset-seconds` attribute specifies an integer number of seconds to shift\nthe given date.\n\n#### `data-options-\\*` (optional)\n\nThe `data-options-*` supports all the options under [Intl.DateTimeFormat.options](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/DateTimeFormat#parameters)\nparameter that specifies the formatting style to use for `localeString` format.\nValid attributes include: `data-options-date-style`, `data-options-time-style`, etc.\n\nNote that if `display-in` attrubute is set to `utc`, the value of\n`data-options-time-zone` will automatically be converted to `UTC`.\n\n### Styling\n\nYou may use the `bento-date-display` element selector to style the Bento Date Display component freely.\n\n---\n\n## Preact/React Component\n\n### Import via npm\n\n```sh\nnpm install @bentoproject/date-display\n```\n\n```javascript\nimport React from 'react';\nimport {BentoDateDisplay} from '@bentoproject/date-display/react';\nimport '@bentoproject/date-display/styles.css';\n\nfunction App() {\n  return (\n    <BentoDateDisplay\n      datetime={dateTime}\n      displayIn={displayIn}\n      locale={locale}\n      render={(date) => (\n        <div>{`ISO: ${date.iso}; locale: ${date.localeString}`}</div>\n      )}\n    />\n  );\n}\n```\n\n### Interactivity and API usage\n\nThe Bento Date Display component does not have an imperative API. However, the Bento Date Display Preact/React component does accept a `render` prop that renders the consumer's template. This `render` prop should be a function which the Bento Date Display Preact/React component can use to render its template. The `render` callback will be provided a variety of date-related parameters for consumers to interpolate in the rendered template. See the [`render` prop section](#render) for more information.\n\n### Layout and style\n\nThe Bento Date Display Preact/React component allows consumers to render their own templates. These templates may use inline styles, `<style>` tags, Preact/React components that import their own stylesheets.\n\n### Props\n\n#### `datetime`\n\nRequired prop. Denotes the date and time as a Date, String, or Number. If String, must be a standard ISO 8601 date string (e.g. 2017-08-02T15:05:05.000Z) or the string `now`. If set to `now`, it will use the time the page loaded to render its template. If Number, must be a POSIX epoch value in milliseconds.\n\n#### `displayIn`\n\nOptional prop that can be either `\"utc\"` or `\"local\"` and defaults to `\"local\"`. This prop indicates what timezone to display the date in. If set to the value `\"utc\"`, the component will convert the given date to UTC.\n\n#### `locale`\n\nAn internationalization language string for each timer unit. The default value is `en` (for English). This prop supports all values that are supported by the user's browser.\n\n#### `localeOptions`\n\nThe `localeOptions` object supports all the options under [Intl.DateTimeFormat.options](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/DateTimeFormat#parameters) parameter that specifies the formatting style to use for `localeString` format.\n\nNote that if the `displayIn` prop is set to `utc`, the value of `localeOptions.timeZone` will automatically be converted to `UTC`.\n\n#### `render`\n\nOptional callback that should render a template. The callback will be provided an object with properties/values related to the date expressed in `datetime`.\n\nBy default, the Bento Date Display component will display the [`localeString` form of the Date](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/toLocaleString) for the given locale and localeOption. See the [Returned Time Parameters section](#returned-time-parameters) for more details on how each property will be displayed.\n\n```typescript\n(dateParams: DateParams) => JSXInternal.Element\ninterface DateParams {\n  day: number;\n  dayName: string;\n  dayNameShort: string;\n  dayPeriod: string;\n  dayTwoDigit: string;\n  hour: number;\n  hour12: number;\n  hour12TwoDigit: string;\n  hourTwoDigit: string;\n  iso: string;\n  localeString: string;\n  minute: number;\n  minuteTwoDigit: string;\n  month: number;\n  monthName: string;\n  monthNameShort: string;\n  monthTwoDigit: string;\n  second: number;\n  secondTwoDigit: string;\n  timeZoneName: string;\n  timeZoneNameShort: string;\n  year: number;\n  yearTwoDi: string;\n}\n```\n\n### Returned Time Parameters\n\nThis table lists the format you can specify in your Mustache template:\n\n| Format            | Meaning                                                       |\n| ----------------- | ------------------------------------------------------------- |\n| day               | 1, 2, ...12, 13, etc.                                         |\n| dayName           | string,                                                       |\n| dayNameShort      | string,                                                       |\n| dayPeriod         | string,                                                       |\n| dayTwoDigit       | 01, 02, 03, ..., 12, 13, etc.                                 |\n| hour              | 0, 1, 2, 3, ..., 12, 13, ..., 22, 23                          |\n| hour12            | 1, 2, 3, ..., 12, 1, 2, ..., 11, 12                           |\n| hour12TwoDigit    | 01, 02, ..., 12, 01, 02, ..., 11, 12                          |\n| hourTwoDigit      | 00, 01, 02, ..., 12, 13, ..., 22, 23                          |\n| iso               | A standard ISO8601 date string e.g. 2019-01-23T15:31:21.213Z, |\n| localeString      | A string with a language sensitive representation.            |\n| minute            | 0, 1, 2, ..., 58, 59                                          |\n| minuteTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| month             | 1, 2, 3, ..., 12                                              |\n| monthName         | Internationalized month name string.                          |\n| monthNameShort    | Internationalized abbreviated month name string.,             |\n| monthTwoDigit     | 01, 02, ..., 11, 12                                           |\n| second            | 0, 1, 2, ..., 58, 59                                          |\n| secondTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| timeZoneName      | Internationalized timezone, like `Pacific Daylight Time`      |\n| timeZoneNameShort | Internationalized timezone, abbreviated, like `PST`           |\n| year              | 0, 1, 2, ..., 1999, 2000, 2001, etc.                          |\n| yearTwoDigit      | 00, 01, 02, ..., 17, 18, 19, ..., 98, 99                      |\n","readmeFilename":"README.md","gitHead":"c7c16e5e6f51fa01e6e31b5edddf60feacb1ebb1","bugs":{"url":"https://github.com/ampproject/amphtml/issues"},"_id":"@bentoproject/date-display@1.2305232041.0","_nodeVersion":"18.16.0","_npmVersion":"9.5.1","dist":{"integrity":"sha512-/RQBDWjCyEh2HmtbjeUUNxYdecUFV26wcWsdFpiUZEmEecTNbDxQY5DCIbCUEW225bhvXL04dRNBOxg3gyJK9w==","shasum":"204da8286bb5389a5ec1fbc5b929e49ec95a36af","tarball":"https://registry.npmjs.org/@bentoproject/date-display/-/date-display-1.2305232041.0.tgz","fileCount":29,"unpackedSize":681501,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIHWVFe27g181Zh10uFkF0zScBUaOA4+QDuoPKZsyFQeBAiBMfSDG8s9JA2/NChky1PJu+eoij+l9DCTees0s6EWMlw=="}]},"_npmUser":{"name":"bentoprojectbot","email":"bentobot@amp.dev"},"directories":{},"maintainers":[{"name":"bentoprojectbot","email":"bentobot@amp.dev"},{"name":"kristoferbaxter","email":"kbax@me.com"},{"name":"esth","email":"esther@amp.dev"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/date-display_1.2305232041.0_1684916759788_0.0558528410906749"},"_hasShrinkwrap":false},"1.2305241828.0":{"name":"@bentoproject/date-display","version":"1.2305241828.0","description":"Displays time data that you can render in your page.","author":{"name":"Bento Authors"},"license":"Apache-2.0","main":"./dist/web-component.js","module":"./dist/web-component.module.js","exports":{".":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./web-component":{"import":"./dist/web-component.module.js","require":"./dist/web-component.js"},"./preact":{"import":"./dist/component-preact.module.js","require":"./dist/component-preact.js"},"./react":{"import":"./dist/component-react.module.js","require":"./dist/component-react.js"},"./web-component.css":"./dist/web-component.css"},"repository":{"type":"git","url":"git+https://github.com/ampproject/amphtml.git","directory":"extensions/amp-date-display/1.0"},"homepage":"https://github.com/ampproject/amphtml/tree/main/extensions/amp-date-display/1.0","peerDependencies":{"preact":"^10.2.1","react":"^17.0.0"},"dependencies":{"@bentoproject/core":"0.2305241828.0"},"readme":"# Bento Date Display\n\nDisplays time data that you can render in your page. By providing specific [attributes](#attributes) in the Bento Date Display tag, the Bento Date Display extension returns a list of time parameters, which you can pass to [an amp-mustache template](../../amp-mustache/amp-mustache.md) for rendering. Refer to the [list below for each returned time parameter](#returned-time-parameters).\n\n## Web Component\n\nYou must include each Bento component's required CSS library to guarantee proper loading and before adding custom styles. Or use the light-weight pre-upgrade styles available inline. See [Layout and style](#layout-and-style).\n\n### Example: Import via npm\n\nInstall via npm:\n\n```sh\nnpm install @bentoproject/bento-date-display\n```\n\n```javascript\nimport {defineElement as defineBentoDateDisplay} from '@bentoproject/bento-date-display';\ndefineBentoDateDisplay();\n```\n\n### Include via `<script>`\n\n```html\n<script type=\"module\" src=\"https://cdn.ampproject.org/bento.mjs\" crossorigin=\"anonymous\"></script>\n<script nomodule src=\"https://cdn.ampproject.org/bento.js\" crossorigin=\"anonymous\"></script>\n<!-- Include bento-mustache.js to use mustache templates with this component -->\n<script async src=\"https://cdn.ampproject.org/v0/bento-mustache.js\"></script>\n<script type=\"module\" src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.mjs\" crossorigin=\"anonymous\"></script>\n<script nomodule src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.js\" crossorigin=\"anonymous\"></script>\n<link rel=\"stylesheet\" href=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.css\" crossorigin=\"anonymous\">\n```\n\n### Example\n\n```html\n<!DOCTYPE html>\n<html>\n  <head>\n    <script\n      type=\"module\"\n      async\n      src=\"https://cdn.ampproject.org/bento.mjs\"\n    ></script>\n    <script nomodule src=\"https://cdn.ampproject.org/bento.js\"></script>\n    <script async src=\"https://cdn.ampproject.org/v0/bento-mustache.js\"></script>\n    <script\n      type=\"module\"\n      async\n      src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.mjs\"\n    ></script>\n    <script\n      nomodule\n      async\n      src=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.js\"\n    ></script>\n    <link\n      rel=\"stylesheet\"\n      type=\"text/css\"\n      href=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.css\"\n    />\n  </head>\n  <body>\n    <bento-date-display\n      datetime=\"2021-09-09T16:02:08.494Z\"\n      displayIn=\"utc\"\n      locale=\"en-GB\"\n    >\n      <template>\n        <div>ISO: {{iso}}; locale: {{localeString}}</div>\n      </template>\n    </bento-date-display>\n  </body>\n</html>\n```\n\n### Interactivity and API usage\n\nThe Bento Date Display component does not have an imperative API. However, the Bento Date Display Web Component will render a mustache-template, provided by the consumer in a `<template>` tag with `type=\"amp-mustache\"`. This template may interpolate date-related parameters. See the [Returned Time Parameters section](#returned-time-parameters) for a full list of all the available parameters.\n\n### Layout and style\n\nEach Bento component has a small CSS library you must include to guarantee proper loading without [content shifts](https://web.dev/cls/). Because of order-based specificity, you must manually ensure that stylesheets are included before any custom styles.\n\n```html\n<link rel=\"stylesheet\" type=\"text/css\" href=\"https://cdn.ampproject.org/v0/bento-date-display-1.0.css\">\n```\n\nAlternatively, you may also make the light-weight pre-upgrade styles available inline:\n\n```html\n<style data-bento-boilerplate>\n  bento-date-display {\n    display: block;\n    overflow: hidden;\n    position: relative;\n  }\n</style>\n```\n\n### Attributes\n\n#### `datetime`\n\nThe `datetime` attribute specifies the date and time in a standard ISO 8601 date\nstring (e.g. 2017-08-02T15:05:05.000Z) or the string `now`. If set to `now`,\n`bento-date-display` will use the time the page loaded to render its template.\n\n#### `timestamp-ms`\n\nThe `timestamp-ms` attribute specifies the date and time using the number of\nmilliseconds since 1970-01-01T0:00:00.000Z\n\n#### `timestamp-seconds`\n\nThe `timestamp-seconds` attribute specifies the date and time using the number\nof seconds since 1970-01-01T0:00:00.000Z\n\n#### `locale` (optional)\n\nAn internationalization language string for each timer unit. The default value\nis `en` (for English). This attribute supports all values that are supported by\nthe user's browser.\n\n#### `display-in` (optional)\n\nIf set to the value `utc`, the `display-in` attribute will convert the given\ndate to UTC.\n\n#### `offset-seconds` (optional)\n\nThe `offset-seconds` attribute specifies an integer number of seconds to shift\nthe given date.\n\n#### `data-options-\\*` (optional)\n\nThe `data-options-*` supports all the options under [Intl.DateTimeFormat.options](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/DateTimeFormat#parameters)\nparameter that specifies the formatting style to use for `localeString` format.\nValid attributes include: `data-options-date-style`, `data-options-time-style`, etc.\n\nNote that if `display-in` attrubute is set to `utc`, the value of\n`data-options-time-zone` will automatically be converted to `UTC`.\n\n### Styling\n\nYou may use the `bento-date-display` element selector to style the Bento Date Display component freely.\n\n---\n\n## Preact/React Component\n\n### Import via npm\n\n```sh\nnpm install @bentoproject/date-display\n```\n\n```javascript\nimport React from 'react';\nimport {BentoDateDisplay} from '@bentoproject/date-display/react';\nimport '@bentoproject/date-display/styles.css';\n\nfunction App() {\n  return (\n    <BentoDateDisplay\n      datetime={dateTime}\n      displayIn={displayIn}\n      locale={locale}\n      render={(date) => (\n        <div>{`ISO: ${date.iso}; locale: ${date.localeString}`}</div>\n      )}\n    />\n  );\n}\n```\n\n### Interactivity and API usage\n\nThe Bento Date Display component does not have an imperative API. However, the Bento Date Display Preact/React component does accept a `render` prop that renders the consumer's template. This `render` prop should be a function which the Bento Date Display Preact/React component can use to render its template. The `render` callback will be provided a variety of date-related parameters for consumers to interpolate in the rendered template. See the [`render` prop section](#render) for more information.\n\n### Layout and style\n\nThe Bento Date Display Preact/React component allows consumers to render their own templates. These templates may use inline styles, `<style>` tags, Preact/React components that import their own stylesheets.\n\n### Props\n\n#### `datetime`\n\nRequired prop. Denotes the date and time as a Date, String, or Number. If String, must be a standard ISO 8601 date string (e.g. 2017-08-02T15:05:05.000Z) or the string `now`. If set to `now`, it will use the time the page loaded to render its template. If Number, must be a POSIX epoch value in milliseconds.\n\n#### `displayIn`\n\nOptional prop that can be either `\"utc\"` or `\"local\"` and defaults to `\"local\"`. This prop indicates what timezone to display the date in. If set to the value `\"utc\"`, the component will convert the given date to UTC.\n\n#### `locale`\n\nAn internationalization language string for each timer unit. The default value is `en` (for English). This prop supports all values that are supported by the user's browser.\n\n#### `localeOptions`\n\nThe `localeOptions` object supports all the options under [Intl.DateTimeFormat.options](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/DateTimeFormat#parameters) parameter that specifies the formatting style to use for `localeString` format.\n\nNote that if the `displayIn` prop is set to `utc`, the value of `localeOptions.timeZone` will automatically be converted to `UTC`.\n\n#### `render`\n\nOptional callback that should render a template. The callback will be provided an object with properties/values related to the date expressed in `datetime`.\n\nBy default, the Bento Date Display component will display the [`localeString` form of the Date](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/toLocaleString) for the given locale and localeOption. See the [Returned Time Parameters section](#returned-time-parameters) for more details on how each property will be displayed.\n\n```typescript\n(dateParams: DateParams) => JSXInternal.Element\ninterface DateParams {\n  day: number;\n  dayName: string;\n  dayNameShort: string;\n  dayPeriod: string;\n  dayTwoDigit: string;\n  hour: number;\n  hour12: number;\n  hour12TwoDigit: string;\n  hourTwoDigit: string;\n  iso: string;\n  localeString: string;\n  minute: number;\n  minuteTwoDigit: string;\n  month: number;\n  monthName: string;\n  monthNameShort: string;\n  monthTwoDigit: string;\n  second: number;\n  secondTwoDigit: string;\n  timeZoneName: string;\n  timeZoneNameShort: string;\n  year: number;\n  yearTwoDi: string;\n}\n```\n\n### Returned Time Parameters\n\nThis table lists the format you can specify in your Mustache template:\n\n| Format            | Meaning                                                       |\n| ----------------- | ------------------------------------------------------------- |\n| day               | 1, 2, ...12, 13, etc.                                         |\n| dayName           | string,                                                       |\n| dayNameShort      | string,                                                       |\n| dayPeriod         | string,                                                       |\n| dayTwoDigit       | 01, 02, 03, ..., 12, 13, etc.                                 |\n| hour              | 0, 1, 2, 3, ..., 12, 13, ..., 22, 23                          |\n| hour12            | 1, 2, 3, ..., 12, 1, 2, ..., 11, 12                           |\n| hour12TwoDigit    | 01, 02, ..., 12, 01, 02, ..., 11, 12                          |\n| hourTwoDigit      | 00, 01, 02, ..., 12, 13, ..., 22, 23                          |\n| iso               | A standard ISO8601 date string e.g. 2019-01-23T15:31:21.213Z, |\n| localeString      | A string with a language sensitive representation.            |\n| minute            | 0, 1, 2, ..., 58, 59                                          |\n| minuteTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| month             | 1, 2, 3, ..., 12                                              |\n| monthName         | Internationalized month name string.                          |\n| monthNameShort    | Internationalized abbreviated month name string.,             |\n| monthTwoDigit     | 01, 02, ..., 11, 12                                           |\n| second            | 0, 1, 2, ..., 58, 59                                          |\n| secondTwoDigit    | 00, 01, 02, ..., 58, 59                                       |\n| timeZoneName      | Internationalized timezone, like `Pacific Daylight Time`      |\n| timeZoneNameShort | Internationalized timezone, abbreviated, like `PST`           |\n| year              | 0, 1, 2, ..., 1999, 2000, 2001, etc.                          |\n| yearTwoDigit      | 00, 01, 02, ..., 17, 18, 19, ..., 98, 99                      |\n","readmeFilename":"README.md","gitHead":"fcd19c6354383946b2d66b95efec56661b06e5b6","bugs":{"url":"https://github.com/ampproject/amphtml/issues"},"_id":"@bentoproject/date-display@1.2305241828.0","_nodeVersion":"18.16.0","_npmVersion":"9.5.1","dist":{"integrity":"sha512-zvNu5gWmAY6Xv5ciuu2Bp+uhh9jjFWXrtlXTmN/Y11iamUxn7NhXFJRjhqvoBcGdwga1z+peFDv/7e9hRBg/dQ==","shasum":"30dd158c1dd6967449dd551e74b1a47974c42929","tarball":"https://registry.npmjs.org/@bentoproject/date-display/-/date-display-1.2305241828.0.tgz","fileCount":29,"unpackedSize":681501,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDyrmXgWhEp+zgPMRu4XhBCDZnObxlGxjju8ARfdQo59QIhAL5u0UXJT1aDjjQHTKezzx/WnOQ4zZQsp/DKGsNFMWpf"}]},"_npmUser":{"name":"bentoprojectbot","email":"bentobot@amp.dev"},"directories":{},"maintainers":[{"name":"bentoprojectbot","email":"bentobot@amp.dev"},{"name":"kristoferbaxter","email":"kbax@me.com"},{"name":"esth","email":"esther@amp.dev"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/date-display_1.2305241828.0_1685003159080_0.7408735673132607"},"_hasShrinkwrap":false}},"time":{"created":"2021-10-28T18:18:07.032Z","1.2110261518.0":"2021-10-28T18:18:07.291Z","modified":"2023-05-25T08:25:59.434Z","1.2110252343.0":"2021-10-28T21:47:27.683Z","1.2110281959.0":"2021-10-29T11:52:11.660Z","1.2110290545.0":"2021-10-30T11:21:05.586Z","1.2111011823.0":"2021-11-02T11:24:42.426Z","1.2110152252.3":"2021-11-02T22:03:54.923Z","1.2110212130.2":"2021-11-02T22:14:53.298Z","1.2111022043.0":"2021-11-03T11:21:00.165Z","1.2111180040.0":"2021-11-18T21:27:02.666Z","1.2111060251.3":"2021-11-18T21:42:10.044Z","1.2111182332.0":"2021-11-19T12:24:13.957Z","1.2111060251.9":"2021-11-19T16:30:57.178Z","1.2111191951.0":"2021-11-20T12:23:12.600Z","1.2111230244.0":"2021-11-23T12:24:24.112Z","1.2111230636.0":"2021-11-24T12:22:21.619Z","1.2111242025.0":"2021-11-25T12:41:56.519Z","1.2111292120.0":"2021-11-30T12:40:46.370Z","1.2111152338.2":"2021-11-30T17:54:58.120Z","1.2112010058.0":"2021-12-01T12:18:59.862Z","1.2112012300.0":"2021-12-02T12:30:26.979Z","1.2112021656.0":"2021-12-03T12:22:17.425Z","1.2112032204.0":"2021-12-04T12:19:54.684Z","1.2112062322.0":"2021-12-07T12:26:58.945Z","1.2112062322.2":"2021-12-07T22:29:13.724Z","1.2112080230.0":"2021-12-08T13:21:32.084Z","1.2112080230.1":"2021-12-08T15:57:38.910Z","1.2112082232.0":"2021-12-09T12:45:13.889Z","1.2111242025.1":"2021-12-10T00:11:27.392Z","1.2112091956.0":"2021-12-10T12:46:01.895Z","1.2112102136.0":"2021-12-11T12:31:12.858Z","1.2112132331.0":"2021-12-14T12:59:12.276Z","1.2112160003.0":"2021-12-16T12:19:34.611Z","1.2112162055.0":"2021-12-17T12:17:33.570Z","1.2112170012.0":"2021-12-18T12:18:02.203Z","1.2112201724.0":"2021-12-21T12:21:47.164Z","1.2112212349.0":"2021-12-22T12:23:23.652Z","1.2112221739.0":"2021-12-23T12:18:35.924Z","1.2112231523.0":"2021-12-24T12:20:37.831Z","1.2201042109.0":"2022-01-05T12:30:52.972Z","1.2201052144.0":"2022-01-06T12:40:49.280Z","1.2201061922.0":"2022-01-07T12:31:57.137Z","1.2201071715.0":"2022-01-08T12:21:41.566Z","1.2201101902.0":"2022-01-11T12:29:35.740Z","1.2112231523.1":"2022-01-11T19:24:54.855Z","1.2201120015.0":"2022-01-12T12:30:20.052Z","1.2112231523.2":"2022-01-12T22:38:50.606Z","1.2201122239.0":"2022-01-13T13:00:18.873Z","1.2201131702.0":"2022-01-14T13:04:35.583Z","1.2201141909.0":"2022-01-15T12:21:20.651Z","1.2201141909.1":"2022-01-25T19:49:28.061Z","1.2201141909.3":"2022-01-26T20:59:17.104Z","1.2201141909.4":"2022-02-01T21:37:45.523Z","1.2201212122.3":"2022-02-02T17:58:43.914Z","1.2202012258.0":"2022-02-02T19:13:21.203Z","1.2202022130.0":"2022-02-03T16:55:34.364Z","1.2202031816.0":"2022-02-04T15:46:30.249Z","1.2202042210.0":"2022-02-05T09:17:35.943Z","1.2202072236.0":"2022-02-08T09:19:55.928Z","1.2201262038.1":"2022-02-08T21:12:54.734Z","1.2202082004.0":"2022-02-09T22:16:27.292Z","1.2202092050.0":"2022-02-10T17:57:10.468Z","1.2202112230.0":"2022-02-14T21:05:56.067Z","1.2202142035.0":"2022-02-15T09:25:18.259Z","1.2202042210.1":"2022-02-15T18:23:08.294Z","1.2202152253.0":"2022-02-16T09:09:05.380Z","1.2202162256.0":"2022-02-17T09:30:08.603Z","1.2202180255.0":"2022-02-18T09:44:55.520Z","1.2202230359.0":"2022-02-23T09:29:59.396Z","1.2202232232.0":"2022-02-24T15:22:25.475Z","1.2202241911.0":"2022-02-25T15:17:50.478Z","1.2202252101.0":"2022-02-28T16:45:53.454Z","1.2202230359.1":"2022-03-01T22:06:31.243Z","1.2203041950.0":"2022-03-15T18:35:59.477Z","1.2203151539.0":"2022-03-16T08:22:02.100Z","1.2203172113.0":"2022-03-18T08:23:14.738Z","1.2203221937.0":"2022-03-23T08:25:14.077Z","1.2203231914.0":"2022-03-24T08:23:11.878Z","1.2203101844.0":"2022-03-24T20:09:23.443Z","1.2203281422.0":"2022-03-29T08:28:27.718Z","1.2204121632.0":"2022-04-12T18:15:25.358Z","1.2204122000.0":"2022-04-13T08:30:18.053Z","1.2204132005.0":"2022-04-14T08:31:58.826Z","1.2204142048.0":"2022-04-15T08:26:09.588Z","1.2204160405.0":"2022-04-16T08:23:48.140Z","1.2204182206.0":"2022-04-19T08:29:58.610Z","1.2204191429.0":"2022-04-20T08:31:06.243Z","1.2204211736.0":"2022-04-22T08:25:34.367Z","1.2204221712.0":"2022-04-23T08:24:13.373Z","1.2204252045.0":"2022-04-26T08:30:38.696Z","1.2204272205.0":"2022-04-28T08:30:45.774Z","1.2204281949.0":"2022-04-29T08:26:44.227Z","1.2204292129.0":"2022-04-30T08:24:39.827Z","1.2205031420.0":"2022-05-04T08:25:44.623Z","1.2205041533.0":"2022-05-05T08:25:54.010Z","1.2205051832.0":"2022-05-06T08:25:02.935Z","1.2205090810.0":"2022-05-10T08:31:04.590Z","1.2205101904.0":"2022-05-11T08:31:01.150Z","1.2205120110.0":"2022-05-12T08:30:04.390Z","1.2205161914.0":"2022-05-17T08:25:12.094Z","1.2205181800.0":"2022-05-19T08:26:08.457Z","1.2205191749.0":"2022-05-20T08:26:04.878Z","1.2205232225.0":"2022-05-24T08:25:04.483Z","1.2205120110.1":"2022-05-24T19:11:43.699Z","1.2205251942.0":"2022-05-26T08:26:00.307Z","1.2205270638.0":"2022-05-27T08:26:04.981Z","1.2206071918.0":"2022-06-07T22:26:42.611Z","1.2206072228.0":"2022-06-08T08:26:25.085Z","1.2206082301.0":"2022-06-09T08:29:50.615Z","1.2205270638.4":"2022-06-10T21:34:09.061Z","1.2206101637.0":"2022-06-11T08:25:41.468Z","1.2206131450.0":"2022-06-14T08:26:53.362Z","1.2206071918.1":"2022-06-14T21:25:53.469Z","1.2206162023.0":"2022-06-17T08:26:08.917Z","1.2206221455.0":"2022-06-23T08:26:17.317Z","1.2206291614.0":"2022-06-30T16:07:15.700Z","1.2207071723.0":"2022-07-08T08:32:41.552Z","1.2207181727.0":"2022-07-19T08:25:15.059Z","1.2207201724.0":"2022-07-21T08:25:46.116Z","1.2207221643.0":"2022-07-23T08:26:18.520Z","1.2207261725.0":"2022-07-27T08:25:08.188Z","1.2207281718.0":"2022-07-29T08:28:15.519Z","1.2208021808.0":"2022-08-03T08:26:51.506Z","1.2208042017.0":"2022-08-05T08:28:23.865Z","1.2208051912.0":"2022-08-06T08:26:59.288Z","1.2208081650.0":"2022-08-09T08:26:36.093Z","1.2208092047.0":"2022-08-10T08:26:35.481Z","1.2207281718.1":"2022-08-10T16:56:42.345Z","1.2207281718.2":"2022-08-10T18:15:26.837Z","1.2208112015.0":"2022-08-12T08:27:26.494Z","1.2208121708.0":"2022-08-13T08:26:26.168Z","1.2208051912.1":"2022-08-16T23:04:34.743Z","1.2208172101.0":"2022-08-24T20:54:52.275Z","1.2208242209.0":"2022-08-25T08:26:43.859Z","1.2209072154.0":"2022-09-08T08:24:48.296Z","1.2209131909.0":"2022-09-14T08:43:34.962Z","1.2208242209.1":"2022-09-15T16:41:49.445Z","1.2209142312.0":"2022-09-20T22:07:28.361Z","1.2210010655.0":"2022-10-04T16:49:09.025Z","1.2210041838.0":"2022-10-05T08:29:08.237Z","1.2210052034.0":"2022-10-06T08:24:37.470Z","1.2210071758.0":"2022-10-08T08:25:31.126Z","1.2210112333.0":"2022-10-12T08:24:42.040Z","1.2210142102.0":"2022-10-15T08:23:33.282Z","1.2210172057.0":"2022-10-18T08:27:47.124Z","1.2210191347.0":"2022-10-20T08:24:33.895Z","1.2210211855.0":"2022-10-22T08:22:59.840Z","1.2210251605.0":"2022-10-26T08:27:19.134Z","1.2210272257.0":"2022-10-28T08:25:49.775Z","1.2211042305.0":"2022-11-05T08:24:30.937Z","1.2211060024.0":"2022-11-08T08:25:17.972Z","1.2211111611.0":"2022-11-12T08:23:51.267Z","1.2211151402.0":"2022-11-16T18:35:24.488Z","1.2211182146.0":"2022-11-19T08:25:43.687Z","1.2211250451.0":"2022-11-25T08:24:17.225Z","1.2211302304.0":"2022-12-01T08:23:45.131Z","1.2212071834.0":"2022-12-07T19:37:10.120Z","1.2212092023.0":"2022-12-10T08:24:54.119Z","1.2211302304.1":"2022-12-13T21:52:51.427Z","1.2212151632.0":"2022-12-20T15:52:17.436Z","1.2212151632.1":"2022-12-20T20:09:29.957Z","1.2211302304.2":"2022-12-20T22:32:16.843Z","1.2212151632.2":"2023-01-03T18:11:28.910Z","1.2301031703.0":"2023-01-03T20:30:00.697Z","1.2301032153.0":"2023-01-04T08:25:07.548Z","1.2301041800.0":"2023-01-05T08:25:32.490Z","1.2301100345.0":"2023-01-10T08:25:25.068Z","1.2301112346.0":"2023-01-12T08:26:37.807Z","1.2301181928.0":"2023-01-19T08:25:46.222Z","1.2301261900.0":"2023-01-27T08:26:38.446Z","1.2301301810.0":"2023-01-31T08:26:11.625Z","1.2302012254.0":"2023-02-02T08:24:23.476Z","1.2302021743.0":"2023-02-03T08:25:50.062Z","1.2302031721.0":"2023-02-04T08:23:44.374Z","1.2302171719.0":"2023-02-18T08:23:16.849Z","1.2302271541.0":"2023-02-28T17:24:08.271Z","1.2303151529.0":"2023-03-15T16:26:03.205Z","1.2303151621.0":"2023-03-22T08:24:58.288Z","1.2303231800.0":"2023-03-29T09:55:18.442Z","1.2304040531.0":"2023-04-04T08:25:30.701Z","1.2304062309.0":"2023-04-07T08:24:22.362Z","1.2304122229.0":"2023-04-13T08:25:03.628Z","1.2304132133.0":"2023-04-14T08:24:59.941Z","1.2304212144.0":"2023-04-22T08:26:06.674Z","1.2304241924.0":"2023-04-25T08:26:34.623Z","1.2304262219.0":"2023-04-27T08:28:20.803Z","1.2305022024.0":"2023-05-03T08:26:45.246Z","1.2305051745.0":"2023-05-06T08:25:20.025Z","1.2305152039.0":"2023-05-16T08:26:55.032Z","1.2305182038.0":"2023-05-19T08:27:15.652Z","1.2305221508.0":"2023-05-23T08:26:00.506Z","1.2305051745.1":"2023-05-23T23:04:13.106Z","1.2305232041.0":"2023-05-24T08:26:00.050Z","1.2305241828.0":"2023-05-25T08:25:59.311Z"},"maintainers":[{"name":"bentoprojectbot","email":"bentobot@amp.dev"},{"name":"kristoferbaxter","email":"kbax@me.com"},{"name":"esth","email":"esther@amp.dev"}],"description":"Displays time data that you can render in your page.","homepage":"https://github.com/ampproject/amphtml/tree/main/extensions/amp-date-display/1.0","repository":{"type":"git","url":"git+https://github.com/ampproject/amphtml.git","directory":"extensions/amp-date-display/1.0"},"author":{"name":"Bento Authors"},"bugs":{"url":"https://github.com/ampproject/amphtml/issues"},"license":"Apache-2.0","readme":"","readmeFilename":""}